home *** CD-ROM | disk | FTP | other *** search
/ LSD Docs / LSD Docs.iso / FILEZ / lsdph&ph.dms / lsdph&ph.adf / LOD-H.TJ#3.TXT.pp / LOD-H.TJ#3.TXT
Text File  |  1990-09-07  |  168KB  |  3,674 lines

  1.  
  2. The LOD/H Technical Journal, Issue #3: File 01 of 11
  3.  
  4.                           Released: October 21, 1988
  5.  
  6.  
  7.  
  8.                                      THE
  9.  
  10.                            LOD/H TECHNICAL JOURNAL
  11.                            -----------------------
  12.  
  13.  
  14.                                 INTROUCTION:
  15.  
  16.  
  17.     When putting together a high quality newsletter, it is sometimes difficult
  18. to locate suitable articles and arrange with the author for transmission.
  19. Difficulties of this type have caused this issue to be almost one year late.
  20. All of the older articles have been updated to insure the latest, most
  21. accurate information.
  22.  
  23. 2600 Magazine update:
  24.  
  25.     Lex Luthors' Hacking IBM VM/CMS Systems article from Issue 2 has been
  26. published in the November/December issue of 2600 of 1987.  Phucked Agent 04's
  27. article on the Outside Loop Distribution Plant has been published in the
  28. Fall/88 issue.  This brings the total up to 5 articles from the LOD/H
  29. Technical Journal that they have published.  The others were CLASS by The
  30. Videosmith, the TSPS Console by The Marauder, and Update #4 of the LOH Telenet
  31. Directory. To subscribe to 2600, which is published quarterly contact:
  32.  
  33. 2600
  34. PO Box 762
  35. Middle Island, NY USA  11953
  36.  
  37. Or call for more information: (516) 751-2600
  38.  
  39.  
  40. You can find the Technical Journal on the following boards:
  41.  
  42. The Phoenix Project: 512-441-3088
  43. Digital Logic   : 305-752-8645 (NEW USER PASS = RISC)
  44.  
  45. ------------------------------------------------------------------------------
  46.  
  47.                      TABLE OF CONTENTS:
  48.  
  49. 01 Introduction to the LOD/H Technical Journal          Staff             02 K
  50.    and Table Of Contents for Volume 2, Issue 3
  51.  
  52.  
  53. 02 Understanding Automatic Message Accounting Part A    Phantom Phreaker  22 K
  54.  
  55. 03 Understanding Auotmatic Message Accounting Part B    Phantom Phreaker  25 K
  56.  
  57. 04 Update file: Shooting Shark's UNIX password hacker   Shooting Shark    03 K
  58.  
  59. 05 An Introduction to Teradyne's 4TEL System            Doom Prophet      12 K
  60.  
  61. 06 A Cellular Automaton Encryption System               The Mentor        29 K
  62.  
  63. 07 Hacking the IRIS Operating System                    The Leftist       13 K
  64.  
  65. 08 A Guide to Coin Control Systems                      Phase Jitter      08 K
  66.  
  67. 09 A UNIX password hacker from USENET                   -------------     16 K
  68.  
  69. 10 Reprint News Article: 'LOD BUST MYTH'                --------------    13 K
  70.  
  71. 11 Network News & Notes                                 The Mentor        30 K
  72.  
  73.  
  74. Total: 6 articles, 11 files   173 K
  75.  
  76. ------------------------------------------------------------------------------
  77.  
  78.  
  79. The LOD/H Technical Journal, Issue #3: File 02 of 11
  80.  
  81.            $LOD$LOD$LOD$LOD$LOD$LOD$LOD$LOD$LOD$LOD$LOD$LOD$LOD$
  82.            L                                                   L
  83.            O           AUTOMATIC MESSAGE ACCOUNTING            O
  84.            D                                                   D
  85.            $                       (AMA)                       $
  86.            L                                                   L
  87.            O                    An overview                    O
  88.            D                                                   D
  89.            $            Written by Phantom Phreaker            $
  90.            L                                                   L
  91.            O                  Legion Of Doom!                  O
  92.            D                                                   D
  93.            $LOD$LOD$LOD$LOD$LOD$LOD$LOD$LOD$LOD$LOD$LOD$LOD$LOD$
  94.  
  95.                               <part one of two>
  96.  
  97.  
  98.     This article is meant to provide an explanation of Automatic Message
  99. Accounting (AMA) and how it was/is used in the past and present.
  100.  
  101.     All information included in this file is correct to my knowledge, however,
  102. if anyone notices any errors or has anything interesting to add, try to get in
  103. touch with me one way or another and let me know.
  104.  
  105.     Hopefully this article will clear up any misconceptions about AMA that
  106. have been circulating around on bulletin boards and by word of mouth. Keep in
  107. mind, however, that the information here may not be applicable to your
  108. specific area or telco. The information contained herein generally applies to
  109. the BOC's, and if you are served by an independent telco, your method of
  110. billing may differ.
  111.  
  112.     This article is aimed more towards the more experienced telecommunications
  113. enthusiast. People with limited knowledge may have a hard time understanding
  114. the information presented here. However, if you can contact me I will try to
  115. answer any questions or clarify anything included in this article that isn't
  116. understood.
  117.  
  118.     Information will be included in this article concerning the use of AMA in
  119. the past. This is being done for people in older areas or areas served by an
  120. independent telco that may still be using the old technology.
  121.  
  122.  
  123. HISTORY
  124. -------
  125.  
  126.     In the past, Call Detail Record (CDR) information was collected and
  127. recorded by cordboard operators in a process known as manual ticketing. The
  128. operator recorded this information by writing it down manually upon a
  129. formatted record called a ticket. These tickets were sent to the appropriate
  130. office where billing was handled. This manual ticketing process was
  131. time-consuming, and was phased out with the introduction of electromechanical
  132. switching.
  133.  
  134.     Before the advent of AMA, a magnetically operated counter called a message
  135. register was associated with each subscribers line in a given central office.
  136. This counter was responsible for counting the number of calls that each
  137. subscriber made, for billing purposes. This message register was caused to
  138. operate one or more times when the called party answered the telephone. The
  139. way this works is when the called party answers, a reverse battery signal was
  140. sent back over the trunk circuit to activate a relay in the originating office
  141. which was responsible for the application of a 48-volt battery to advance the
  142. message register the appropriate number of units. A local call is/was usually
  143. one message unit, regardless of how long the call lasted.  Local calls to
  144. further away areas were/are usually two message units.  Long distance calls
  145. were handled either by cordboard operators, using manual ticketing, or by a
  146. method not involving operators known as zone registration. With zone
  147. registration, calls to different zones would cause the message register to
  148. operate two or more times per time period. This would make the cost higher for
  149. longer calls, and less for shorter calls.
  150.  
  151.     At the end of the billing period, each message register had to be manually
  152. photographed to keep track of the number of calls made by that specific
  153. subscriber. These photos were taken by a 35 millimeter camera that was known
  154. as a Traffic Usage Recorder, and then sent to the same place that manual
  155. tickets (prepared by operators) were.  However, this method of billing soon
  156. grew costly and inefficient, so a new method, LAMA (Local Automatic Message
  157. Accounting) was developed. Additional and more specific information shall be
  158. included later in the article.
  159.  
  160.     In the late 1940's, the Bell System developed LAMA, which recorded the
  161. billing information in a much more efficient manner. However, some end offices
  162. did not have enough call traffic to warrant the installation of LAMA
  163. equipment.  To solve this problem, CAMA (Centralized Automatic Message
  164. Accounting) was developed in the mid 1950's. CAMA was different from LAMA in
  165. that it was based in a toll or tandem office and could record the AMA
  166. information for every end office that it served. More on LAMA and CAMA will be
  167. included later in the article.
  168.  
  169.     Another development concerning AMA is the computerization of the system,
  170. named LAMA-C or CAMA-C, for 'LAMA-Computerized' or 'CAMA-Computerized'. CAMA
  171. had used paper tape perforators for a time before the magnetic tape method was
  172. introduced with CAMA-C. LAMA-C is a computerized version of LAMA which also
  173. uses magnetic tape (LAMA-C is still used today). LAMA and LAMA-A (previous
  174. versions) used paper tape, although LAMA-A was more efficient.
  175.  
  176.     LAMA, LAMA-A, CAMA, and CAMA-C were all part of the AMARS, the Automatic
  177. Message Accounting Recording System. However, a newer term for more modern
  178. setups is the AMACS, for Automatic Message Accounting Collection System. The
  179. AMACS includes end office AMA systems, a recent introduction called the AMARC
  180. (AMA Recording Center), AMARC sensors from end offices to the AMARC, the data
  181. links used to transmit billing information, and data recievers located at the
  182. AMARC site. The AMARC is a product of the new age of computerized technology
  183. as it applies to the telecommunications systems used in our society.  Still,
  184. LAMA and CAMA and their different versions shall be described and explained to
  185. help people understand how they were/are used.
  186.  
  187.  
  188. LAMA
  189. ----
  190.  
  191.     LAMA is described by Notes on the Network (1983) as 'A process using
  192. equipment located in a local office for automatically recording billing data
  193. for message rate calls and for customer-dialed station to station toll
  194. calls'.  What this is means is that if your CO uses LAMA, and you are on a
  195. single party line (most people are), all 1+ toll calls will be billable by
  196. LAMA equipment, and all calls coming from message rate lines. A message rate
  197. line, for those of you not familiar with the term, is a telephone line that
  198. has the ability to receive incoming calls, but all outgoing calls will cost
  199. the subscriber. The subscriber pays for basic service (the ability to receive
  200. calls) with the consideration that all other calls (even local ones) will cost
  201. a certain amount of money per call. Many subscribers in several major cities
  202. get this feature automatically, and thus phone bills are generally higher in
  203. these areas.
  204.  
  205.     LAMA originally recorded billing information on punched paper tape, in a
  206. version known as LAMA-A, but now magnetic tape is generally the format used in
  207. places where LAMA-C equipment is used.  The paper tape perforators that
  208. recorded the CDR data in LAMA-A were noisy, and they needed maintenance due to
  209. their electromechanical construction. The magnetic tape method is much more
  210. reliable, and quieter as well.
  211.  
  212.     If a persons End Office uses LAMA, then all toll calls from all lines and
  213. all local calls from metered rate lines are recorded on the LAMA tape, with a
  214. few exceptions. LAMA can only be used to record AMA information for one and
  215. two party lines. On other party lines such as three and four party, the
  216. originating caller has his/her number identified by an operator via the ONI
  217. (Operator Number Identification) method. It is not been determined by the
  218. author if the BOC (Bell Operating Company) operators such as TOPS (Traffic
  219. Operator Position System, made by Northen Telecom Inc. of Canada) or MPOW
  220. (Multi-Purpose Operator Workstation, by US West) operators would be used for
  221. this ONI or not. I would guess that AT&T TSPS operators would handle an
  222. inter-LATA toll call, and that the BOC TOPS/MPOW operators would handle the
  223. ONI for an intra-LATA call (my reasoning behind this statement is the fact
  224. that whenever I have had an ONI due to equipment failure, which is similar to
  225. ONI needed, only the ANI outpulsing was garbled, the called number was still
  226. transmitted in the correct fashion.  I am assuming that the end office
  227. switching system would route the call to the correct operator position by
  228. matching the NPA-NXX with some sort of internal table which makes a
  229. distinction between intra and inter-LATA calls). Anyway, these calls had their
  230. AMA information sent from the appropriate operator position to the toll office
  231. that served the 3+ party line, onto CAMA tape.  Another instance in which a
  232. LAMA office may use CAMA instead is when an ANIF (ANI Failure) occurs. If the
  233. ANIF is sent to TSPS, then that TSPS will record billing information upon CAMA
  234. tape by using ONI. It seems that AMA information that has been recorded by an
  235. operator is buffered and stored until it is time to send the information to
  236. the appropriate places for processing. In the case of AT&T TSPS operators, the
  237. TSPS had it's own magnetic tape which was sent to the RAO (Regional Accounting
  238. Office, formerly called Revenue Accounting Office) on a regular basis. I am
  239. not sure if this method is still used or if TSPS AMA has been updated or
  240. enhanced in some way.
  241.  
  242.  
  243. EXAMPLES OF LAMA USAGE
  244. ----------------------
  245.  
  246.     The following is the call flow procedure in a LAMA-A (paper tape) system.
  247.  
  248.     After a customer completes dialing, the dialed number (the called number),
  249. the originating class of service, Line Equipment Number (LEN), and call type
  250. are sent from the switch to the AMA equipment.  Translations, such as figuring
  251. the billing telephone number from the Line Equipment Number, are done. The
  252. information that comes from the translations procedures determines which paper
  253. tape perforator shall be used to record the data for this specific call. A
  254. record of the initial information gathered is called the initial entry. The
  255. last line of the initial entry contains a two digit code called a Call
  256. Identity Index, which identifies telco equipment such as the trunk or district
  257. junctor that will be used for that call.
  258.  
  259.     When the call is answered, another entry is made, called the answer
  260. entry.  This entry is a single line on the paper tape and has the CII and the
  261. exact time that the call was answered on it.
  262.  
  263.     The last entry on the paper tape is known as the disconnect entry.  This
  264. entry contains the CII and the exact time that the call ended.
  265.  
  266.     The CII is important because it is what the RAO used to group together all
  267. the data about a given call. Entries are recorded at different times in a LAMA
  268. system, they are not in sequential order, so the CII makes it easier to find
  269. all three entries for a specific call.
  270.  
  271.     This method of recording AMA information required the RAO to 'unshuffle
  272. the deck' when it came time to organize the AMA information. The variations in
  273. the AMA recording formats used by different switching systems eventually led
  274. Bellcore to develop a standard AMA format, named the Bellcore AMA Format
  275. (BAF).  More information will be included about this format later in the
  276. article.
  277.  
  278.     In a No. 5 Crossbar switching system, the AMA setup used special purpose 3
  279. inch wide paper tape on which AMA records were recorded by CO equipment. This
  280. method of recording is for the stone ages, as it has been phased out by almost
  281. every BOC. Similar to the LAMA-A call flow, this method of AMA used three AMA
  282. entries. The first one was the customers service information, which included
  283. the calling and called telephone numbers, the second one was recorded when the
  284. telephone was answered, and the third one was recorded at disconnect.  This
  285. also made the job at the RAO a bit harder, as again, they had to 'unshuffle
  286. the deck'.
  287.  
  288.     The No. 2 ESS introduced the latest magnetic tape recording technology
  289. that was available at that time. The 2E used 200 BPI, 7 track mag tapes, and
  290. it introduced special data coding conventions.  It's technology and
  291. conventions are still in use today, but I think that the BPI and number of
  292. tracks have been increased. The 2E mimics the No. 5 Crossbar AMA method by
  293. recording three entries and interleaving them on the magnetic tape. Data
  294. common to all calls on a tape (such as date, CO info, etc.) are recorded in
  295. special tape headers. The No. 2B ESS was introduced with the same AMA
  296. technology as the 2E, but a 2B that provides equal access capabilities for
  297. interexchange carriers adds a new data entry to the three used by the 2E. This
  298. new entry reports the time of connection of a carrier to the local network,
  299. which is needed for carrier access billing.
  300.  
  301.     The No. 1 ESS modernized the AMA process even more. The 1E used 200 BPI,
  302. nine track tape. The 1E provides data collection memory registers for AMA
  303. information on applicable calls. A register is assigned to an AMA call and
  304. kept open for the call's duration. This register collected most of the billing
  305. data that was needed. The AMA information was then written to magtape at the
  306. time of disconnect.  This made it easier for the RAO to process. The AMA
  307. format used by the 1E uses variable length records whose fields occur for the
  308. most part in a general, preset pattern. Eventually, though, even the 1E AMA
  309. method was found to be slightly faulty. This was due to high processing costs
  310. at the RAO and the problem of tape headers getting erased from the tape. The
  311. BAF was made to solve the problems that are associated with other AMA setups.
  312. An update to the BAF is called the EBAF, or Extended Bellcore AMA Format. The
  313. main difference between the BAF and EBAF is that EBAF is more flexible and can
  314. be used easier, as the BAF uses a defined structure for storing data. The EBAF
  315. can append other information to the end of an AMA record, and this makes it
  316. more flexible.
  317.  
  318.  
  319. ANI FORMATS
  320. -----------
  321.  
  322.     The ANI formats outpulsed in a LAMA arrangement are as follows (assume
  323. that the call being shown for an example is being dialed from a home
  324. telephone, as dialing from coinphones would cause different ST signals to be
  325. sent; also the type of signaling in this case is SF in-band):
  326.  
  327.  
  328.                       CALLED number:KP+(NPA)+NXX+XXXX+ST
  329.  
  330.                        CALLING number:KP+I+NXX+XXXX+ST
  331.  
  332.  
  333.     The second format is the ANI associated with LAMA and is sent to the LAMA
  334. equipment after the ANI receiving trunk winks. The NPA included in this
  335. example is optional and only needed if the subscriber is making a call to a
  336. Foreign NPA (FNPA). The complete called number is not included in all cases,
  337. as when an AMA setup is configured for bulk-billing. In bulk-billing, the
  338. entire called number is not recorded, but just enough for billing purposes.
  339. The CALLING number is the number that the subscriber is dialing from.  These
  340. two numbers are sent in Multi Frequency (MF) tones to MF receivers located
  341. within a CO. The I in the ANI is an information digit, and these shall be
  342. explained later in the article.
  343.  
  344.     One may wonder how a CO knows which lines it serves are message rate lines
  345. and which are flat rate. On electromechanical switches such as Step by Step,
  346. No. 1 and No. 5 Crossbar (it should be noted that there are no remaining panel
  347. switches within the Bell System), there is an electronic line card associated
  348. with each Directory Number which holds information relevant to that line.
  349. These cards have to have any type of change hardwired into them. However, in
  350. digital/ electronic switching systems, there are Line Class Codes which
  351. reflect information about each subscribers line. There are many, many of these
  352. codes.  Some of the more common and interesting ones are listed below:
  353.  
  354.  
  355.     LCC                                          EXPLANATION
  356.     ---                                          -----------
  357.  
  358.     1FR                         Single party Flat rate Residential
  359.                                 line
  360.  
  361.     1MR                         Single party Metered rate residential
  362.                                 line
  363.  
  364.     1CF                         Single party Coin First coin
  365.                                 telephone
  366.  
  367.     1OF                         Single party Official (telco) line
  368.  
  369.     1FB                         Single party Flat rate Business line
  370.  
  371.     1MB                         Single party Metered rate Business
  372.                                 line
  373.  
  374.  
  375.     These codes can be found for a line in several places, such as certain
  376. fields in telco computer output reports. COSMOS and LMOS are two such
  377. computers that hold this information. If you find COSMOS printouts or have
  378. access to COSMOS, these Line Class Codes will be listed under the 'LCC' field
  379. in an ISH, INQ, or other inquiry.  Sometimes the data in the LCC field will
  380. match or be similar to the data in the US field, which is a USOC (Universal
  381. Service Order Code).  A USOC and an LCC aren't the same thing though.
  382.  
  383.  
  384. CAMA
  385. ----
  386.  
  387.     CAMA operates along the same basic principle that LAMA does, except that
  388. CAMA is based in a toll or tandem office (class 4). CAMA is made to be used in
  389. areas where it would be costly to implement a LAMA arrangement for each and
  390. every class 5 office. This is because some end offices did not have enough
  391. traffic to warrant the cost and work required to install LAMA equipment. LAMA
  392. setups can/could be found in abundance in rural areas near large cities.
  393.  
  394.     The first letter in each of the acronyms (L)AMA and (C)AMA describes the
  395. usage of each. (L)AMA, for Localized, in a local central office, and (C)AMA
  396. for Centralized, in a toll office.
  397.  
  398.     The outpulsing formats to CAMA are similar to the LAMA ANI outpulsing. The
  399. outgoing trunk to the serving CAMA office from the end office sends the called
  400. DN in the format of KP+(NPA)+NXX+XXXX+ST.  Next, the incoming CAMA trunk
  401. requests the end office to send the calling number. This is sent as
  402. KP+I+(NPA)+NXX+XXXX+ST, where the I is an information digit which gives
  403. information about the status of the process, and the NPA may or may not be
  404. needed, depending upon the setup. The information digits that follow are used
  405. in ANI outpulsing to Local and Centralized AMA. They are:
  406.  
  407.  
  408.     0-Automatic Identification (a normal call, with no special
  409.       treatment);
  410.  
  411.     1-Operator Identification (ONI-call is sent to an operator who
  412.       requests the customer to give the number they are calling from);
  413.  
  414.     2-Identification Failure (ANI Failure, handled the same way as
  415.       ONI).
  416.  
  417.  
  418.     The ONI due to ANIF and normal ONI which is used on certain party lines
  419. are kept track of. If too many ANI Failures happen, then a report will be
  420. generated indicating this fact. ONI needed is more standard and ordinary, and
  421. thus safer for the telecommunications enthusiast. This information can be put
  422. to a good use, as if you find an outgoing CAMA trunk when you are boxing, you
  423. can place calls over it by using the above CAMA formats. The only limiting
  424. factor is that the NXX of the calling number that you sent for ANI must be an
  425. office that is served by the particular CAMA offices trunk that you are using.
  426.  
  427.     Note that CAMA is not used much anymore, it was mainly used with Electro-
  428. Mechanical toll switches such as the No. 4A Crossbar, and the Crossbar Tandem
  429. (XBT). I don't think there are any XBTs or 4As in operation in the AT&T toll
  430. network, but CAMA may be used by independent telcos, or by telcos in rural
  431. areas that serve only a small number of central offices. In an independent
  432. telco setup, a CAMA arrangement may be used, but not in the same way as AT&T
  433. has used it. The centralized location may not be a toll office, it may just be
  434. the largest CO in that companies network. There can be several variations.
  435. CAMA was originally introduced to work with and in conjunction with ANI, thus
  436. the original term for the process, CAMA/ANI. For a complete description of ANI
  437. in electromechanical switching systems, see one of the older issues of Phrack
  438. Inc. newsletter for a file written by Doom Prophet and myself, titled
  439. 'Automatic Number Identification'. I have seen CAMA mentioned in recent telco
  440. information, so I assume that CAMA is still in use, at least in some places.
  441. Supposedly a way to determine if you are on CAMA is to dial local numbers, and
  442. send 2600Hz.  If you can seize a trunk, then it is likely that you are served
  443. by CAMA. You can then pick local exchange codes, (NXX), dial them, seize a
  444. trunk, and then MF using the CAMA format included above, sending a false ANI
  445. for one of the local exchanges. If you do this, I suggest that you don't send
  446. the ANI of a resident. Use non-working numbers, disconnected numbers, payphone
  447. numbers. I am not sure if there is any check done upon the number sent in ANI
  448. by the toll office or not, but it is probable that the local switch is
  449. responsible for screening out invalid numbers and such. So if you can get on a
  450. CAMA trunk then you have the power to bill calls to anyone else who is served
  451. by a CO that homes in on the same toll office and uses the same CAMA
  452. equipment.
  453.  
  454.               <end of part one>
  455. The LOD/H Technical Journal, Issue #3: File 03 of 11
  456.  
  457.  
  458.              $LOD$LOD$LOD$LOD$LOD$LOD$LOD$LOD$LOD$LOD$LOD$LOD$LOD$
  459.              L                                                   L
  460.              O           AUTOMATIC MESSAGE ACCOUNTING            O
  461.              D                                                   D
  462.              $                       (AMA)                       $
  463.              L                                                   L
  464.              O                    An overview                    O
  465.              D                                                   D
  466.              $            Written by Phantom Phreaker            $
  467.              L                                                   L
  468.              O                  Legion Of Doom!                  O
  469.              D                                                   D
  470.              $LOD$LOD$LOD$LOD$LOD$LOD$LOD$LOD$LOD$LOD$LOD$LOD$LOD$
  471.  
  472.           <part two of two>
  473.  
  474.  
  475.      The standard AT&T Toll office switch, the No. 4 ESS, is also equipped to
  476. handle CAMA if necessary. The CAMA procedure is as follows: Call data for the
  477. CAMA call is kept in a buffer (technically called an Accounting Block (AB))
  478. which then stores the entry upon a nine track 800-bpi (bits per inch) AMA tape
  479. (note: the information used in research for this part of the article was
  480. rather old, so the bits per inch has probably increased). The data that are
  481. kept in this buffer and put on the tape are as follows: the calling DN, the
  482. called DN, answer and disconnect times accurate to 0.1 second, and other misc.
  483. information. The callers DN can be entered into the 4ESS in two ways, ANI or
  484. ONI. ANI is of course the normal method for identifying a callers DN for
  485. billing purposes. ONI is used when there is an ANIF, or when it is needed (the
  486. other equipment cannot get the DN with ANI). When the 4E gets an ANIF or an
  487. ONI needed, it sends the call to a TSPS operator, who should ask the caller
  488. for their number. When an operator gets an ONI situation 'from' a 4E, she uses
  489. two types of trunks, a talking trunk, and a keying trunk. The talking trunk is
  490. what the subscriber comes in upon and is the line over which the operator asks
  491. for the callers DN. The keying trunk originates at the 4E and terminatates at
  492. TSPS, and is what is used to send the callers DN (in MF) to the 4ESS office.
  493. The operator has access to both trunks at the same time, thus she can enter
  494. the number in a quick and orderly fashion.
  495.  
  496.     When a line classification does not fit into the 'one information digit'
  497. (KP+I+NNX+XXXX+ST) category, two information digits are used. When two are
  498. used, they are called screening codes. Screening codes are outpulsed along
  499. with the ANI for certain types of telephone lines, and when ANI is being sent
  500. to an alternate carrier via 'Equal Access' (Feature Group D, 1+ dialing).
  501. These screening codes are two digits and precede the subscribers DN. An
  502. example of screening code outpulsing is as follows:
  503.  
  504.                                KP+II+NNX+XXXX+ST
  505.  
  506.     The II represents two information digits that precede the callers number.
  507. Some of the more common screening codes are as follows:
  508.  
  509.       KP+00+NXX+XXXX+ST     Normal telephone call, identified POTS line;
  510.       KP+01+NXX+XXXX+ST     ONI needed on a multiparty line;
  511.       KP+02+NXX+XXXX+ST     ONI needed due to ANI Failure;
  512.       KP+07+NXX+XXXX+ST     Hospital, inmate type telephone;
  513.       KP+08+NXX+XXXX+ST     Line restricted from dialing inter-LATA;
  514.       KP+10+NNX+XXXX+ST     Telco test call;
  515.       KP+20+NNX+XXXX+ST     Automatic Identified Outward Dialing centrex call;
  516.       KP+27+NNX+XXXX+ST     Coin telephone call.
  517.  
  518.  
  519.     These double digit outpulsing formats are used in Equal Access areas, and
  520. a similar method of outpulsing is used when customers deal with TSPS
  521. operators.
  522.     For more information, see the July, 1987 issue of 2600 Magazine, an article
  523. entitled 'How phreaks are caught'.
  524.  
  525. AMARC
  526. -----
  527.  
  528.     The AMARC, or Automatic Message Accounting Recording Center, is a fairly
  529. modern development toward recording billing information. It offers the telco
  530. several advantages to the older electromechanical setups, such as increased
  531. revenue (always a plus in their eyes), reduced RAO processing costs, a new
  532. computerized format that stores data on 1600 bpi, industry compatible magnetic
  533. tape, elimination of loss due to paper tapes being destroyed, and elimination
  534. of per-office paper tape pickup and delivery.
  535.  
  536.  
  537. THE NO. 1 AMARC
  538. ---------------
  539.  
  540.     The first version of the AMARC was the No. 1 AMARC, which received billing
  541. data on a real-time basis over dedicated data links. It was based on two DEC
  542. PDP-11/40 minicomputers. The No. 1 AMARC controls and recieves data from a
  543. maximum of thirty dedicated channels. A channel consisted of a dedicated line
  544. (probably a Private Line service) equipped with a 202T data set, operating
  545. asynchronously at 1.2 kbps. The No. 1 AMARC had a feature which allowed it to
  546. call, over the DDD network, a backup channel in case one of the normal
  547. channels experienced a failure. This backup channel could be reached by anyone
  548. who had the phone number. It has not been determined by the author if there
  549. was/is any security on these backup channels.
  550.  
  551.  
  552. THE NO. 1A AMARC
  553. ----------------
  554.  
  555.     Eventually, it was decided that more data channels were needed, and that
  556. the AMARC computer could be centralized, and not clustered in administrative
  557. centers, as was the procedure. The No. 1A AMARC fulfilled the telco's needs.
  558. The No. 1A AMARC uses a higher capacity minicomputer, the DEC PDP-11/70, and
  559. Western Electric peripheral equipment to provide ninety input channels,
  560. improved maintenance capabilities, and room for growth in several areas. The
  561. first No. 1A AMARC began operation in 1981 in the Chicago area.
  562.  
  563.     An important feature common to both the No. 1 and No. 1A AMARC was the
  564. ability to recieve billing information electronically over dedicated lines
  565. from central office switches. Equipment located in central offices called
  566. sensors send this data. There are different types of sensors for different
  567. types of switching equipment, but the most common AMARC sensors shall be
  568. listed here.
  569.  
  570.  
  571.     The Call Data Transmitter (CDT). The newest AMARC sensor. The CDT is a
  572. microprocessor based system which is used to collect data from No. 5 crossbar
  573. offices. It is designed to be used in systems that do not have LAMA-A and do
  574. not have enough traffic to warrant the expense of installing the No. 5 ETS.
  575. It can be used with other sensors, and is not the only kind used in No. 5
  576. crossbars. The first one was cut over in Illinois in 1980.
  577.  
  578.     The Call Data Accumulator (CDA). Similar to the CDT, but uses wired logic
  579. control. The CDA, which collects AMA information from SxS switches, was the
  580. first sensor to be made for use with the AMARC. This sensor is connected to
  581. the ring, tip, and sleeve leads in a SxS switch, probably at the MDF. The
  582. first CDA was cut over into service in New York in 1975.
  583.  
  584.     The Billing Data Transmitter (BDT). Used in electromechanical offices,
  585. such as the Nos. 1, 5, 4, and 4A Crossbar, SxS CAMA, and the Crossbar Tandem
  586. (XBT).  The BDT replaced up to 10 paper tape perforators that were previously
  587. used.  Provides a newer alternative to LAMA-A. The BDT recieves billing data
  588. from the older LAMA-A paper tape recorder circuits and sends them to the
  589. AMARC. The first BDT was cut over in New York in 1976.
  590.  
  591.     The No. 5 Electronic Translator System (ETS). The No. 5 ETS was added to
  592. No. 5 Crossbar systems to provide some electronic switching functions that
  593. were not present before. These functions are things such as line, trunk, and
  594. routing translations provided by software methods rather than wired cross
  595. connections.  The No. 5 ETS consists of duplicated Western Electric 3A
  596. auxillary processors with associated scanners and distributors. The first No.
  597. 5 ETS was installed in Ohio in 1977.
  598.  
  599.     VIDAR, a special sensor used in Crossbar No. 1 offices. VIDAR does not
  600. interface with the AMARC but instead sends data to it's own tape. This tape is
  601. then sent to the RAO on a regular basis.
  602.  
  603.     These various sensors are specially designed electronic units which are
  604. part of or connected to class 5 offices. These sensors collect and generate
  605. billing data from the office they are used with. The billing data consist of
  606. answer and disconect times, call type, and the amount of measured local and
  607. toll calls made.
  608.  
  609.     Some offices have added sensors, but exceptions include several ESS
  610. systems which use SPC (Stored Program Control) to send data to the AMARC. SPC
  611. means that the sensor is built into the switch software and that no other
  612. equipment is needed. An example of this is the NTI DMS-100 switch. Nos. 2, 2B,
  613. 3, 3B, and No. 5 ESS also do not have special AMARC sensors, but send data to
  614. the AMARC over a synchronous connection via a SPUC/DL (Serial Peripheral Unit
  615. Controller /Data Link) at speeds of 2.4 and 4.8 kbps. There is another part in
  616. the 2B ESS AMARC data link, called the AMARC Protocol Converter (APC). The APC
  617. is a medium between the SPUC/DL and the AMARC.
  618.  
  619.     The No. 4 ESS, TSPS, 1ESS, 1AESS, and 2ESS switches don't have AMARC
  620. sensors, and aren't even connected to the AMARC. These switches all have their
  621. own AMA systems, from which the data is sent to the RAO regularly. Another
  622. exception is the DMS-10 Remote Switch, which is connected to a device at the
  623. RAO called a collector.
  624.  
  625.     There are other options possible when dealing with AMA collection, such as
  626. the Distributed Call Measurement System (DCMS) made by a telco equipment
  627. vendor, which acts like a mini-AMARC, and Northern Telecom's Distributed
  628. Processing Peripheral system, which is used to collect billing data from NTI's
  629. DMS switches. These systems can be used where applicable.
  630.  
  631.  
  632. RECENT DEVELOPMENTS
  633. -------------------
  634.  
  635.     In places where magnetic tape has been phased out, a new method of storing
  636. the AMA data called AMA TeleProcessing Systems (AMATPS) has been implemented.
  637. AMATPS overcomes the disadvantages of magnetic tape (such as the sequential
  638. way the data is recorded, the high-density data losses that may happen, and
  639. the sometimes unseen problems with the tape unit) by using random access disk
  640. drives. AMATPS also adds some new system parts which can make the job easier.
  641. Still, some AMATPS are not used to their full capability and can still present
  642. problems to the telco.
  643.  
  644.     One of the parts that AMATPS adds to the overall AMACS is the use of AMA
  645. Transmitters (AMAT's). These transmitters are added to the sensors, and
  646. increase the power of the overall setup by providing things such as temporary
  647. storage areas and programming applications. AMAT's are generally PC-sized
  648. machines with two disk drives, and 50-150 megabyte hard disks.
  649.  
  650.     The second important addition is the collector. The collector acts like
  651. the AMARC by polling the AMAT over data links. The collector, like AMARC, is a
  652. centrally located computer system, usuallly running on an IBM Series 1, an
  653. HP-1000, or an AT&T 3B5.
  654.  
  655.     Teleprocessing systems are made to understand a common AMA language format
  656. made by Bellcore, the Bellcore AMA Format and Extended Bellcore AMA Format.
  657. These were mentioned in part A of this article.
  658.  
  659.  
  660. BOC/AT&T INTERACTION
  661. --------------------
  662.  
  663.     Since the majority of people are served by AT&T, one may wonder how inter-
  664. LATA call data gets to the given Inter-LATA Carrier (IC), in this case, AT&T.
  665. AT&T has its own AMA collection system, which is called BILDATS (BILling DATa
  666. System), and this is what collects the AT&T data. I would guess that each AT&T
  667. toll office has some sort of interface with this computer system, but I have
  668. no solid proof of this. It has also been suggested to me from a reliable
  669. source that AT&T sends each BOC their own magnetic tapes, which the BOC's then
  670. fill with AT&T's billing information. I am not sure which of these methods is
  671. used.
  672.  
  673.     The BOC billing information takes a different route, however. On a regular
  674. basis (I believe each day), AMARC tapes are sent to the Regional Accounting
  675. Office (RAO) or billing office, where each customers intra-LATA traffic is
  676. calculated and their telephone bill printed and mailed. The customer then
  677. recieves the bill and goes about whatever method of payment he chooses.
  678. Telephone bills can usually be paid in person in many different places in
  679. large cities, or they can be mailed in directly if the customer wishes. In my
  680. area, the customer pays once, which is a total of his AT&T and BOC bill. This
  681. is payable to the BOC, and AT&T then gets their payment from the BOC. In the
  682. case of independent carriers such as US Sprint, MCI, ALC Communications, and
  683. the like, I cannot say for sure what they all do as there seems to be no
  684. standard procedure for this interaction, but in two instances, two specific
  685. RBOC's (US West and BellSouth) handle FG-D Equal Access style billing for MCI
  686. throughout their serving areas. There is a computer system involved in this
  687. alternate carrier billing cycle, called the Carrier Access Billing System
  688. (CABS). This system calculates the prices bases on tariffs in use, and bills
  689. the carriers on a monthly basis accordingly. I am not sure how widespread the
  690. use of this sytem is, though. When the customer receives his MCI bill along
  691. with his BOC bill he can pay them both at once. I would imagine that the
  692. larger long distance services would be able to afford getting this service
  693. from the RBOC's, while the smaller ones with less money would do it by
  694. themselves, which would probably be a slow, drawn out process. In some cases,
  695. dialing via an alternate carrier (other then your primary one) will cause the
  696. billing cycle to take anywhere up to three months to complete, or even more.
  697. Another interesting note about alternate carrier dialing, some carriers do not
  698. start billing until a specific amount of time has elapsed. This is known as
  699. buffer-zone billing. I know of one company that uses a 45 second buffer zone,
  700. but I am not sure what the other companies use. You can find this information
  701. out by talking to a customer service department, however some companies CS
  702. departments either don't know, or they do not wish to tell the customer (or
  703. 'potential' customer). With buffer zone billing (assume 45 seconds in this
  704. case), you will be billed for the call if you let the phone ring, listen to a
  705. busy signal, etc. if the duration of the call is greater than or equal to 45
  706. seconds. Many of the ICs that use this type of billing do not have the
  707. equipment to detect answer supervision, so if you can keep a conversation very
  708. short, you may get away with a free call, without breaking any laws.
  709.  
  710.  
  711. CALL CREDITING
  712. --------------
  713.  
  714.     When you receive credit for improperly placed long distance calls from an
  715. operator or a telco business office (after you receive your phone bill)
  716. certain things happen.
  717.  
  718.    Operator crediting involves the operator entering a special flag on an AMA
  719. tape to deduct the specific amount of given charge from the subscriber's
  720. telephone number. I believe that this process involves (with AT&T TSPS) the KP
  721. TRBL key, and (with NTI's TOPS) the KP TRBL and the CHG ADJ (charge adjust)
  722. keys.
  723.  
  724.    Business office crediting happens when you call the business office and
  725. talk to a BOC 'service representative'. This person will then enter your
  726. telephone number into a terminal, using the DOE (Direct Order Entry) system,
  727. which is in use in my area. The billing record information comes from a
  728. computer called CRIS (Customer Record Information System), which is accessed
  729. by BOSS (Billing and Order Support System). BOSS has a link to computer
  730. systems at the RAO, as this is how the customer's toll data gets to the
  731. business office. A service representative can then pull up your toll charges
  732. and correct them with appropriate credit entries.
  733.  
  734.  
  735. SECURITY  (EVERYONE READ THIS PART)
  736. -----------------------------------
  737.  
  738.     There have been several rumors going around about AMA and it's relation to
  739. people who commit toll fraud, and I will attempt to clarify these rumors. It
  740. is possible that a billing tape could be used to try to find out who called a
  741. certain number at a given time. Another way AMA tapes/disks could be used as a
  742. record of someone committing toll fraud would be if this person would happen
  743. to be under a newer switch, such as the DMS-100, and they attempted to use a
  744. blue box without knowing the dangers of it (I will speak only on the DMS-100
  745. because when a older switching system is replaced with a new one, the most
  746. common replacements are the AT&T No. 5 ESS and the Northern Telecom DMS-100
  747. Family of switching systems). DMS-100 does indeed have the capability to
  748. record a blue boxer's MF tones in an AMA record if the boxer doesn't know what
  749. he is doing.  1AESS also has blue box detection features. I am not sure about
  750. other switching systems, but I would guess that most of the newer switches
  751. have some sort of blue box fraud detection features, of course the end user of
  752. these switches (the telco) does not have to use them. However it is difficult
  753. to find out if your CO uses anything of this nature unless you are a good
  754. social engineer or have access in some way to the switch or switch output
  755. messages and know what to look for. For instance on the Northern Telecom
  756. DMS-100 switching system, there are a series of reports known as BLUEBOX
  757. reports which (if in use) will inform the telco of blue boxing activity. The
  758. DMS-100 also has AMA options that can detect certain forms of electronic toll
  759. fraud, such as black and blue boxing. These options can be set any way the
  760. telco wants. These AMA options can be printed on a DMS-100 switching
  761. system,onto hardcopy terminals, or onto a data channel which may send the
  762. Output  Messages (OMs) to a telco computer system such as the Switching
  763. Control Center System (SCCS). These options are printed in an AMA118 OM at
  764. midnight. If an AMA option is in use by that particular switching system,
  765. after the name of the option will be a data field that says ACTIVE. If the
  766. option is not in use, the field will say INACTIVE. An example of an AMA118 OM
  767. is reproduced here.
  768.  
  769.   AMA118 JUL23 12:00:00 2234 INFO AMA-OPTIONS
  770.      AUDIT:       ACTIVE
  771.      CALL-FWD:    ACTIVE
  772.      CDAR:        INACTIVE
  773.      CHG411:      ACTIVE
  774.      CHG555:      ACTIVE
  775.      COIN:        INACTIVE
  776.      DA411:       ACTIVE
  777.      ENFIA-B-C:   INACTIVE
  778.      FREECALL:    INACTIVE
  779.      HIGHREV:     INACTIVE
  780.      INWATS:      ACTIVE
  781.      LNID:        INACTIVE
  782.      LOGAMA:      INACTIVE
  783.      LOGOPT:      ACTIVE
  784.      LONGCALL:    ACTIVE
  785.      LUSORIG:     INACTIVE
  786.      LUSTERM:     INACTIVE
  787.      OBSERVED:    INACTIVE
  788.      OCCOVFL:     ACTIVE
  789.      OCCTERM:     ACTIVE
  790.      OUTWATS:     ACTIVE
  791.      OVERFLOW:    ACTIVE
  792.      SST:         ACTIVE
  793.      TIMECHANGE:  ACTIVE
  794.      TRACER:      ACTIVE
  795.      TRKID:       INACTIVE
  796.      TWC:         INACTIVE
  797.      UNANS-LOCAL: INACTIVE
  798.      UNANS-TOLL:  ACTIVE
  799.  
  800.  
  801.     The most important ones for phreaks to know about are INWATS, LONGCALL,
  802. SST, UNANS-LOCAL, and UNANS-TOLL. INWATS means that calls to 800 numbers are
  803. noted in an AMA record. As far as I know, this option is a required one, at
  804. least since Bulk Change Supplement 23 (BCS23). LONGCALL will flag long calls
  805. in an AMA record. So if it seems to the switch that someone has been on the
  806. phone for a long time, this will be logged. A possible use for this would be
  807. to detect trouble conditions. This option, used in past switching systems, may
  808. have been the cause of many blue box busts. Someone would box for several
  809. hours using the same number (for instance, Directory Assistance) and this may
  810. have been noted by the switch. Another way I think old time boxers may have
  811. been nailed is from boxing off of DA. As you can see in the above listing,
  812. there are several options that probably make AMA entries for calls to DA. If
  813. the length of a call to DA lasts longer than a certain amount of time, the
  814. telco could possibly detect this and attach a monitoring device upon the
  815. suspected persons telephone line. The AMA option 'SST' may also be responsible
  816. for blue box busts in the recent past. SST stands for Short Supervisory
  817. Transition, and an SST is known to the phreak world as a wink. SSTs are
  818. generated when a blue boxer seizes a trunk. The switch can detect these and
  819. log them in an AMA record if the option is set to ACTIVE. SSTs are not solely
  820. caused by boxers, though, as equal access offices can generate a lot of SSTs
  821. in normal operation. I believe that trunking arrangements with ICs (InterLATA
  822. Carriers) are often responsible for triggering these. One toll office I knew
  823. of had thousands of SSTs on a plant measurement report, so if this option is
  824. ACTIVE, it may not be EXTREMELY dangerous, but it can't hurt to know about
  825. this. One possible way around the SST detect is to make your 2600Hz tone last
  826. several seconds. I do not remember the exact figure, but after a certain
  827. number of seconds an SST ceases to be an SST ceases to be an SST. I am not
  828. sure if these longer transitions are logged or not, or if there is even an
  829. option for this. However I believe that the BLUEBOX feature could not be
  830. fooled by doing this. BLUEBOX, if activated, will detect any foreign winks
  831. after a necessary one (necessary for call completion) occurs. Of course you
  832. can always avoid having your DN associated with anything like this by
  833. re-directing your call flow, which can be accomplished easily.
  834.  
  835.     Another AMA option that could be used to catch black boxers is the
  836. UNANS-TOLL option. When this option is ACTIVE, toll calls ringing longer than
  837. a specific period of time can be logged in an AMA record. Someone calling toll
  838. from a DMS-100 to a person using a black box (does anyone still use devices
  839. like the black box anyway?) in a no. 5 crossbar may trigger this option to be
  840. logged. I say 'may' because I am not positive about this, the option could
  841. also be used in other ways, I imagine.
  842.  
  843.     The ENFIA-B-C option is one that could possibly present a problem to a
  844. telecom enthusiast. I have seen the term ENFIA (Exchange Network Features for
  845. Interstate Access) associated with a Feature Group A (POTS dialup) long
  846. distance service. ENFIA-B and C mean FG-B and FG-C service. FG-A and B (POTS
  847. and 950+1/0xxx respectively) could possibly be used to record information
  848. concerning toll fraud. For instance, I know of one service (FG-D and FG-B)
  849. that has the ability to check a telcos' magnetic tape to see what numbers have
  850. been accessing their service. If a large amount of fraud became a problem, the
  851. carrier could get the AMA information to try and determine who is committing
  852. toll fraud. I'm not sure if other companies have this option, I would guess
  853. that almost all of the major companies (MCI, Sprint, Allnet, etc.) have the
  854. ability to use something of this nature to track down security problems.
  855.  
  856.     Have you ever wondered why many of the old blue boxers were caught? It is
  857. due to the use of AMA. AMA records can reveal boxing patterns, and this info
  858. can be used by the telco to track down blue/red/black box users. So if you are
  859. a person who practices any of these methods, be aware of what you are up
  860. against. Boxing has been around for a very long time and the telco knows all
  861. about what goes on and the different methods that people use. So use care. An
  862. informed phreak is a free phreak.
  863.  
  864.  
  865. SUMMARY
  866. -------
  867.  
  868.     Hopefully this article has helped clear up any misconceptions about AMA
  869. that anyone might have had, as well as provide a reference to be looked back
  870. on. The information contained in this article can also be used for social
  871. engineering purposes, if you so desire. However, I do not intend for any of
  872. this information to go into harmful purposes, such as billing calls to other
  873. people, or causing confusion and disorder at any internal points in the telco.
  874. Such actions do not make a person a phone phreak. However, if you find out
  875. anything interesting concerning AMA that isn't included here, or anything
  876. about independent telcos billing systems, feel free to let me know.
  877.  
  878.     If you wish to contact me concerning this article, you can find me on a
  879. few BBS's. I will attempt to answer any questions anyone might have, and would
  880. like to hear from anyone who has a valid interest in the workings of the phone
  881. systems.
  882.  
  883.  
  884. ===============================================================================
  885. Thanks go out to all the people (too many to mention) who have contributed any
  886. information (no matter how small or large) to this article. Other information
  887. for this article has been taken from switching system messages, Bell System
  888. Technical Journals, Bell Labs RECORDs, Bellcore documents, and various other
  889. technical literature and information. I hope someone likes this article
  890. because it took a very long time to complete.
  891. ===============================================================================
  892.  
  893.  
  894.  
  895. ---------------------- Shooting Shark's PW Hacker Update ---------------------
  896.  
  897.  
  898.  
  899.     The following is a reprint of Shooting Sharks' post which he provides
  900. another program which can be typed quickly or uploaded to the unix system of
  901. your choice. This program can be used to ensure that the algorithm does work
  902. and you could then proceed to upload his program from Issue #2 for more
  903. extensive password finding. I was able to get his HPW.C program to run
  904. perfectly, and have found quite a few passwords by having it check passwords
  905. with dictionary entries and other files of probable passwords.
  906.                                                       -Lex Luthor
  907.  
  908.  
  909.  
  910. Taken from: The Free World II 301-668-7657 BBS (no longer up)
  911.  
  912.  
  913. %> When: 9-19-87 at 3:46 am
  914.  
  915.     Since three people have told me my source won't compile on their system,
  916. I've taken the suggestion and put together a *very* stripped-down version of
  917. my HPW.C program from Issue #2.  Now it's basically a 20-line engine that you
  918. can use to verify that the algorithm does indeed work (try it with your own
  919. password) and then add whatever bells and whistles you want (like reading
  920. words from a file, etc.)  The version presented here just prompts the user
  921. for the encrypted password string, and then goes into an endless loop where it
  922. reads a password attempt from the keyboard, encrypts and compares it, and
  923. tells the user if it's the correct password.  It calls no external routines
  924. besides crypt(), printf(), scanf(), strcmp() and exit().  crypt() is
  925. absolutely essential to the program, and the rest are defined in K&R so this
  926. program had *better* work on your unix system!
  927.  
  928.     Here it is.  Sorry for the hassles the old version gave anybody although
  929. some people were able to get it to run quite nicely.
  930.  
  931.  
  932. - - - - - - - - - - - - - - - - - cut here - - - - - - - - - - - - - - - - - -
  933.  
  934. int     len;
  935.  
  936. char    crbuf[30], *crypt(), *pw, pwbuf[10];
  937.  
  938. main()
  939. $
  940.  
  941.  
  942.         printf("first, carefully type the ENCRYPTED password string:Xn>");
  943.         scanf("%s",crbuf);
  944.         printf("Now, type a password attempt at the prompt.  type QUITXn");
  945.         printf("(yes, in caps) on a blank line to quit...XnXn");
  946.         for (;;) $
  947.                 printf("try >");
  948.                 scanf("%s",pwbuf);
  949.                 if (!strcmp(pwbuf,"QUIT"))
  950.                         break;
  951.                 pw = crypt(pwbuf,crbuf);
  952.                 if (!strcmp(pw,crbuf)) $
  953.                         printf(" ==> %s is correct.Xn",pwbuf);
  954.                         exit(0);
  955.                 
  956.         
  957.         printf("done.Xn");
  958. 
  959.  
  960. - - - - - - - - - - - - - - - - - cut here - - - - - - - - - - - - - - - - - -
  961.  
  962.  
  963. The LOD/H Technical Journal, Issue #3: File 05 of 11
  964.  
  965.           *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
  966.          (L)                                               (L)
  967.          (O)    An Overview of the Teradyne 4Tel System    (O)
  968.          (D)                                               (D)
  969.          (+)                       by                      (+)
  970.          (+)                                               (+)
  971.          (+)                  Doom Prophet                 (+)
  972.          (L)                                               (L)
  973.          (O)             Legion of Doom/Hackers!           (O)
  974.          (H)                                               (H)
  975.           *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
  976.  
  977.  
  978.  
  979.     4TEL is a loop testing system mainly used by General Telephone (GTE) that
  980. consists of a Voice Response System and a Craft Dispatch Section as well as
  981. the facilities and equipment used for testing functions. The following text
  982. will attempt to dispell many of the 4TEL myths that have been created in the
  983. past years, such as the idea that it can be used to eavesdrop on lines within
  984. its serving area. The information provided has been gained from company
  985. publications and from personal experience. A 4TEL is not the same thing as a
  986. REMOBS, which stands for REmote service OBservation System.
  987.  
  988.  
  989.  
  990.     The portion of the system that some of the phreak/hack population is
  991. familiar with is the Voice Response System, which has normal POTS dialups.
  992. This system greets the user with an announcement message and then asks for a
  993. password, which is entered in DTMF tones. The legitimate use of these dialups
  994. are for outside craft personnel (linemen) to call in, perform tests and
  995. receive the results for subscribers' lines. The VRS is provided so craft
  996. personnel can access the 4TEL system at times when no one is at the testboard
  997. (at nights or weekends). Through the VRS, up to 8 craft/technicians can access
  998. 4TEL at the same time, enabling them to get more done in a smaller amount of
  999. time.
  1000.  
  1001.  
  1002.  
  1003.     After a password has been accepted by the system, the electronic voice
  1004. will ask for the line number that the user wishes to be tested. The number
  1005. entered will be read back to ensure correct entry. The system will then ask
  1006. for the user to enter the mode. The modes are:
  1007.  
  1008.  
  1009.     1: Calling on other line
  1010.     2: Calling on test line
  1011.     3: Line test results
  1012.  
  1013.  
  1014.     It is possible on some VRS's to get a listing of the modes by dialing 0
  1015. when the voice prompts. Line tests are possible from both modes 1 and 2 by
  1016. dialing the octothorpe (#) key. The results of the test will be announced
  1017. along with the length of the cable in miles. Bridged ringers, if any, will
  1018. also be noted. Mode 3, the line test results section, will tell the user there
  1019. are no test results available unless they have beeen previously entered. The 7
  1020. key is the monitor command from both test modes. If there is speech on the
  1021. line, it will be detected electronically but will NOT be heard by the user.
  1022. The monitor command is not 'REMOBS' (Remote Observation) but a method of
  1023. determining if the line is busy due to normal means (conversation) or due to
  1024. some trouble condition at the switch. When the system asks for the ID code for
  1025. a monitor command, the system will accept the line number as well as the
  1026. initial password, and even a secondary password before dialing, but it has not
  1027. been determined by the author if this is a standard for every 4TEL. Not just
  1028. anything will work for the monitor password however as it will announce if the
  1029. ID code entered is invalid or not.
  1030.  
  1031.  
  1032.     If mode 1 is entered, these commands are available:
  1033.  
  1034.  
  1035. MODE ONE COMMANDS:
  1036.  
  1037.  
  1038.     1-Fault location
  1039.     2-Other Testing
  1040.     7-Test OK, monitor
  1041.     8-Hang up
  1042.     9-Enter next line number
  1043.  
  1044.  
  1045.     If option 7 is chosen, another menu will be available if the line tests
  1046. busy.
  1047.  
  1048.  
  1049.     2-Monitor test
  1050.     3-Overide and test
  1051.     4-Wait for idle
  1052.  
  1053.  
  1054.     If suboption one (Fault location), mode one, is chosen, these commands are
  1055. available:
  1056.  
  1057.  
  1058.     1-Open location
  1059.     3-Short location
  1060.     4-Cross location
  1061.     5-Ground location
  1062.     8-Hang up
  1063.  
  1064.  
  1065.     If suboption two (Other testing), mode one, is chosen, these commands are
  1066. available:
  1067.  
  1068.  
  1069.     2-Loop ground Ohms
  1070.     3-Dial tone test
  1071.     4-Pair ID
  1072.     8-Hang up
  1073.  
  1074.  
  1075.  
  1076. MODE TWO COMMANDS:
  1077.  
  1078.  
  1079.     2-Other testing
  1080.     7-Test OK, monitor
  1081.     8-Hang up
  1082.     9-Enter next line number
  1083.  
  1084.  
  1085.     If suboption 2 (Other testing), mode two, is selected, these commands are
  1086. available:
  1087.  
  1088.  
  1089.     2-Loop ground Ohms
  1090.     8-Hang up
  1091.  
  1092.  
  1093.  
  1094.     The 4TEL system's main use is for standard testing, which is done nightly
  1095. upon every line in an exchange. This locates faults and problems before they
  1096. have to be reported by customers. All lines that have trouble detected upon
  1097. them are printed out in a report at the repair center the next morning where
  1098. the proper fault location and dispatching can be done. The measurement and
  1099. test unit of the 4TEL system is called a COLT, Central Office Line Tester,
  1100. which performs all nightly and on demand testsupon the exchange through local
  1101. test trunks.
  1102.  
  1103.  
  1104.     There are a few different types of COLTs. The standard version will serve
  1105. any CO for up to 10,000 subscribers. The COLT RS is used in rural step by step
  1106. offices (referred to as 'steppers' also) for up to 1,300 lines. The Digital
  1107. COLT is used for digital Central Offices. These can have remote Colt
  1108. Measurement Units (CMU's) for remote switches which are controlled by the Colt
  1109. Computer Unit (CCU) at the host switch. The CMU speed calls the CCU at night
  1110. to start the testing and direct the operations. The CMUs in regular end
  1111. offices have digital links (over the normal telephone network) with the SAC,
  1112. which is how the line test results are distributed to the repair center.
  1113.  
  1114.  
  1115.  
  1116.     The 4TEL system can also test lines upon command by a human operator at
  1117. the SAC (Service Area Computer). The CRT operator enters the line number in
  1118. the proper field and 4TEL runs a full series of tests as well as displaying
  1119. past line history, fault summary, volts and current information, and the cable
  1120. length. The results of the testing are displayed in plain english, as opposed
  1121. to decimal or other format, on the screen. A dispatch decision is also
  1122. displayed after every line test to determine if a dispatch is needed.
  1123.  
  1124.  
  1125.     SAC's
  1126.     -----
  1127.  
  1128.  
  1129.     The SAC is the centralized focal point for 4TEL control and reporting.
  1130. This computer is located in the repair center and distributes test/work
  1131. information between CRT's and COLT's. The SAC formats the results of routine
  1132. testing into a daily advisory report as mentioned earlier.
  1133.  
  1134.  
  1135.  
  1136.     There are several types of 4TEL reports that are worth noting. The
  1137. DISPATCH report lists troubles that can  have an immediate dispatch for them.
  1138. These also tell the location of the fault (cable, CO, station, etc.) and are
  1139. classified into two types, moderate and severe, relating to how service
  1140. affecting the problem may be. The CABLE report lists all new cable faults. A
  1141. Plant Status report summarizes the condition of the outside plant and totals
  1142. them per individual exchange. In these reports, trouble conditions can be
  1143. listed in a variety of ways. CROSSES and WETS refer to line insulation faults
  1144. and may indicate water penetration of the cable. SHORTS and GROUNDS are
  1145. insulation faults at the station set. OPENS refer to a broken, or 'open' Ring
  1146. or Tip lead in a Cable Pair. BACKGROUND refers to electrical noise caused by
  1147. power lines being nearby. ABNORMAL VOLTAGE indicates high voltage conditions.
  1148. There are others, but the reader will hopefully get the idea from the ones
  1149. listed above.
  1150.  
  1151.  
  1152.     CDS
  1153.     ---
  1154.  
  1155.  
  1156.     Another major part of the 4TEL system is the Craft Dispatch System, which
  1157. is a DTMF and speech response setup used to exchange report and schedule
  1158. information between the repair center staff and outside craftspersons. Linemen
  1159. call in to get dispatch information that has been previously entered by the
  1160. dispatcher. CDS plays back the info one field at a time. When the craft
  1161. personnel is ready to receive the next field of information, he simply says
  1162. 'Go' and the system continues. A printer at the repair center informs the
  1163. dispatcher when a craftsperson has received a report. When the trouble is
  1164. taken care of, a completion report is done on the CDS in which it asks for the
  1165. closeout and schedule one field at a time to be entered in DTMF and in speech.
  1166. The clerk at the repair center then closes the trouble on the SAC/4TEL system
  1167. after the line is tested a final time to ensure proper operation.
  1168.  
  1169.  
  1170.     CDS may also have audit trails of every transaction for a certain time
  1171. period. So to summarize the work flow for involving the CDS: Irate customer
  1172. calls the clerk at the repair center. The information is forwarded to the
  1173. dispatcher who enters it into CDS. Craft personnel call in and receive the
  1174. messages, do the required work, then file a completion report. The clerk then
  1175. closes out the trouble in SAC/4TEL.
  1176.  
  1177.  
  1178.     The Digital Concentrator Measurement Unit is another component of the 4TEL
  1179. testing equipment that is used to test lines in digital concentrators such as
  1180. the GTE MXU and the NTI-OPM. They are located inside Digital Loop Carrier
  1181. system remote terminals or huts and consist of a circuit board and measuring
  1182. system. It provides AC and DC measurements of subscriber loops, as well as all
  1183. the normal test/measurement functions such as fault description and location ,
  1184. dispatch messages, and special tests. The DCMU can test the lines of an
  1185. individual DLC remote terminal, or a group of terminals that are located
  1186. together. The capacity of terminals that the DCMU can test is determined by
  1187. analysis of test traffic and economic factors as well. Both the CRT at the SAC
  1188. and the VRS are compatible with the DCMU. These units are self calibrating,
  1189. unlike the PMU's of an LMOS supported Loop Testing System. The 4TEL CCU is
  1190. linked to the DCMU via either a 1200 baud dial up or a dedicated link,
  1191. depending upon the size of the office.
  1192.  
  1193.  
  1194.  
  1195.     Some of the tests that 4TEL performs are loop and ground resistance (which
  1196. detects resistance faults and sheath ground problems), dial tone test (in
  1197. which the number of times dial tone can be drawn during a certain period is
  1198. recorded) , busy line monitoring (not BLV or REMOBS), coin station tests
  1199. (totalizer, coin relay, etc), as well as all the standard tests which were
  1200. covered above. A pair identification can also be done, in which a tone is
  1201. placed on the pair to help those at terminal cabinets locate that specific
  1202. one, similar to the LMOS/MLT tone applique function.
  1203.  
  1204.  
  1205.  
  1206.     Miscellaneous notes
  1207.     -------------------
  1208.  
  1209.  
  1210.     If a user enters the number of the 4TEL system they have dialed in upon,
  1211. the system will announce an intercept. A user cannot monitor/test Directory
  1212. Assistance through 4TEL. Lines that are out of the system's NPA can be tested
  1213. also, but a 1 has to be dialed before the number just like an ordinary toll
  1214. call. The 4TEL VRS will give the user a 'beep' tone after a few seconds of
  1215. waiting for input. If the user doesn't enter anything, the VRS will
  1216. disconnect.  A version of 4TEL is also used by Rochester Telephone in New
  1217. York, and there may be other independent companies that  use the system. Try
  1218. to find out what system you're served by. If you're in a Bell area, it will
  1219. most likely not be 4TEL, but LMOS.
  1220.  
  1221.  
  1222.  
  1223.  I  hope that this article has helped readers to better understand the way the
  1224. 4TEL system operates. Again, there may be some differences depending upon the
  1225. area and the company. Thanks go to Taran King, Phantom Phreaker, and Lucifer
  1226. 666 for supplying information in one way or another that contributed to this
  1227. file.
  1228.  
  1229.  
  1230. Doom Prophet/LOD
  1231. The LOD/H Technical Journal, Issue #3: File 06 of 11
  1232.  
  1233.               |||||||||||||||||||||||||||||||||||||||||||||||||||
  1234. +-+-+-+-+-+-+/                                                   X+-+-+-+-+-+-+
  1235.  X  L  X        Secure Data Encryption with Cellular Automatons        /  L  /
  1236.    X  O  X                                                           /  O  /
  1237.      X  D  X                          by                           /  D  /
  1238.        +-+-+-+                                                   +-+-+-+
  1239.          X  L  X                  The Mentor                   /  L  /
  1240.            X  O  X                                           /  O  /
  1241.              X  H  X    A Legion of Doom Presentation!     /  H  /
  1242.  
  1243.                +-+-+-+                                   +-+-+-+
  1244.                 X_X_X_X_________________________________/_/_/_/
  1245.  
  1246.  
  1247.      One of the key issues that concerns anyone who has sensitive or illegal
  1248. information on their computer system is preventing unauthorized access to this
  1249. information.  Even if you hit a key that deletes everything on the hard disk
  1250. when you see that four-door sedan pull up in the driveway, any idiot with
  1251. Norton's Utilities (IBM) or Copy II+ (Apple) can recover anything that's on
  1252. your drive with minimal effort.  A delete command only changes a flag in the
  1253. VTOC (volume table of contents), it doesn't actually *remove* the file from
  1254. your system.
  1255.      There are two methods to ensure that your data can't be read by a sector
  1256. editor or recovered by NU.  The first is to overwrite everything with a NULL
  1257. (FF) or anything else for that matter.  I've seen one batch file that does a
  1258. global delete, creates a file that says 'EAT HOT DEATH', and then begins
  1259. copying it until disk space is full.  Unfortunately, you can't always guarantee
  1260. that you will be able to get to your computer before someone else does.
  1261.       The second method is to encrypt your data.  Most people have visions of
  1262. data encryption being some sort of arcane process akin to summoning demons or
  1263. talking with Dead Cow Cult members (two closely related process- es.)  In
  1264. practice, it isn't that difficult.  This file is intended to show some very
  1265. short programs that will encrypt data beyond the ability of any- thing short of
  1266. a dedicated mainframe to crack.
  1267.  
  1268.      How to use:  The code examples I provide will be in MicroSoft's
  1269. AmigaBASIC.  It is fairly generic and you should be able to convert it over to
  1270. IBM, //e,c,gs, Mac, ST, C64, or any flavor of mainframe you like.  For those of
  1271. you setting up systems on Packet-Switched Networks (such as the LOD/H system
  1272. one of our members is implementing) data encryption should be considered
  1273. absolutely necessary to maintain security.
  1274.       The terseness of the routines make them easy to insert in a bulletin
  1275. board also, although conversion into C or Assembly would be necessary for
  1276. decent speed.
  1277.  
  1278.       Intro to Cryptography:  Long before computers were around, there was a
  1279. need for data security.  Everyone used lemon juice as 'invisible ink' when they
  1280. were a kid, heating it over a candle to bring it out.  And everyone has seen
  1281. the substitution code where "A" = 1, B = "2", "Z" = 26, etc...
  1282.       The easiest form of encryption involves a variation of the previous.
  1283. First of all, don't think of A = 1 as a substitution, think of it as a
  1284. remapping.  Let's say we have a language made up of the five vowels, and we
  1285. wanted to remap them to the numbers 1-5.  Our map would look like this:
  1286. "AEIOU12345" and our mapping function would be f(c) = POSITION(c) + x where c =
  1287. the letter to map and x is the key (in this case 5.)  So every time we needed
  1288. to encrypt a letter, we would take its position in the map, add 5 to it, and
  1289. come up with the character to substitute.  For the entire alphabet, the mapping
  1290. function would be f(c) = POS(c) + 26 for the map "A..Z,1..26".
  1291.        Your map should be composed of all the characters that will be used for
  1292. encryption.  In a text only encrypter, this will consist of all the printable
  1293. characters your machine can use.  The same method can be used to encrypt binary
  1294. files, but it's not as clear as text only for a teaching example.
  1295.        The problem with this simple form of encryption is that your average C64
  1296. could crack it in a matter of minutes.  Enter into the next level of
  1297. cryptography, random numbers.
  1298.        During World War II the Allied Forces created a system to generate
  1299. random electric noise, recorded this noise onto a wax cylinder, and scram- bled
  1300. radio transmissions by mixing the seemingly random noise with the voice
  1301. transmission.  The soldiers in the field needed an imprint of the same cylinder
  1302. to be able to understand the message.  Think of the wax cy- linder as a
  1303. 'filter' for the crypted message.
  1304.        A random number generator can be easily used to encrypt data providing
  1305. you realize the following-  a random number generator on a computer is not
  1306. really random.  If you initialize the generator with the same seed value on two
  1307. seperate occasions, it will return the same sequence of psuedo- random
  1308. numbers.  Most BASIC's use the RANDOMIZE <seed> command to start the generator
  1309. off.  If you leave off the seed, they get a seed from the system clock or some
  1310. other fairly random source, providing a much truer random selection.  But by
  1311. declaring the seed yourself, you can be sure that you will be able to reference
  1312. this same string of numbers, a string that is very hard to figure out without
  1313. the key (seed.)
  1314.         Program Listing 1 is an example of a BASIC encrypt/decrypt system that
  1315. uses the built-in random number generator include on the machine (or language
  1316. implementation.)
  1317.  
  1318. Program Listing 1
  1319. -----------------
  1320.  
  1321. REM ************************************************************************
  1322. REM
  1323. REM  Ok, this is an example of very basic encryption.  It takes the input
  1324. REM  string and the input key and processes them using the machine's built
  1325. REM  in random number generator.  This version is written in AmigaBASIC 1.2.
  1326. REM  It can be compacted quite a bit by writting it in C, but it's an easy
  1327. REM  algorithm to crack.
  1328. REM
  1329. REM ************************************************************************
  1330.  
  1331. INPUT "String to be encoded"; C$
  1332. INPUT "Key Please! ";K
  1333.  
  1334.  
  1335. REM ************************************************************************
  1336. REM
  1337. REM  When you use the RANDOMIZE command, it seeds the random number gener-
  1338. REM  ator with the key K.  *EVERY* time you seed the generator with the same
  1339. REM  value, you will get the same sequence of psuedo-random numbers.  Since
  1340. REM  the built in random-number generator uses a linear algorithm to gener-
  1341. REM  ate the sequence, it's easy (relatively) to crack.
  1342. REM
  1343. REM ************************************************************************
  1344.  
  1345. RANDOMIZE K
  1346.  
  1347. REM ************************************************************************
  1348. REM
  1349. REM  The only difference between encoding and decoding is which way you
  1350. REM  move in your Q$ array space.  Encoding takes the original and shifts
  1351. REM  to the right, decoding takes the codes value and shifts to the left.
  1352. REM
  1353. REM ************************************************************************
  1354.  
  1355. REREAD:
  1356.   INPUT "Encode or Decode ? ";A$
  1357.   A$=LEFT$(A$,1)
  1358.   IF A$="E" OR A$="e" THEN
  1359.     A=1
  1360.     GOTO HEAD
  1361.   END IF
  1362.   IF A$="D" OR A$="d" THEN
  1363.      A=-1
  1364.   ELSE
  1365.      GOTO REREAD
  1366.   END IF
  1367.  
  1368. REM ************************************************************************
  1369. REM
  1370. REM  Q$ contains all the characters that can be encoded.  Every encoded
  1371. REM  character will be mapped to a character in this array.  I haven't
  1372. REM  included any non-standard characters, so you will have to customize
  1373. REM  it to your particular keyboard/system.  I've included an error check
  1374. REM  that will abort the encryption if it encounters a character that isn't
  1375. REM  in Q$.  I have to use the STRING$ command to insert the spacebar and
  1376. REM  the quote into the string.  It could also be done with a ASC(##) in
  1377. REM  many basics.  You could expand this to include any non-printable
  1378. REM  characters you'd like so you could do non-text files.
  1379. REM
  1380. REM ************************************************************************
  1381.  
  1382. HEAD:
  1383.   SPACE = 32
  1384.   QUOTE = 34
  1385.   Q$="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
  1386.   Q$=Q$+"1234567890!@#$%^&*()-=_+[]$;:'.,<>/?X|D"
  1387.   Q$=Q$+STRING$(1,SPACE)+STRING$(1,QUOTE)
  1388.   QSIZ = LEN(Q$)
  1389.  
  1390. REM ************************************************************************
  1391. REM
  1392. REM  This is the main loop.  L = length of the string to encrypt.  In this
  1393. REM  example, I am only encrypting a single string.  Most people who will
  1394. REM  actually use this will change the FOR loop to run until an EOF is
  1395. REM  encountered in the input file.  Since the syntax for that will vary
  1396. REM  widely from system to system, I'll leave it out.
  1397. REM
  1398. REM ************************************************************************
  1399.  
  1400. L=LEN(C$)
  1401. FOR I = 1 TO L
  1402.  
  1403. REM /* Finds the character I in the input string */
  1404.   X$ = MID$(C$,I,1)
  1405.  
  1406. REM /* Finds the integer location of the character in Q$
  1407. REM    returns variable POZ */
  1408.   GOSUB LOKPOZ
  1409.  
  1410. REM /* RND returns a random # between 0 and 1.  Multiply it by the
  1411. REM    size of array Q$ and you get the number of positions to move
  1412. REM    when encoding or decoding. */
  1413.   POZMV = (RND * QSIZ)
  1414.  
  1415. REM /* If you are encoding, you will shift to the right using addition.
  1416. REM    you take the modula base QSIZ to keep the new character within
  1417. REM    the bounds of Q$. */
  1418.   IF A = 1 THEN
  1419.     NUPOZ = (POZ + POZMV) MOD QSIZ
  1420.   ELSE
  1421. REM /* Otherwise, you subtract, which takes a bit more math to keep
  1422. REM    up with.  Once you have the distance to shift, you must
  1423. REM    convert it to a positive integer and then subtract two to
  1424. REM    account for the head & tail of the array. */
  1425.     NUPOZ = (POZ - POZMV) MOD QSIZ
  1426.     NUPOZ = NUPOZ -2
  1427.     IF NUPOZ < 1 THEN
  1428.       NUPOZ = QSIZ - ABS(NUPOZ)
  1429.     END IF
  1430.   END IF
  1431.  
  1432. REM /* Now you assign the new character in array Q$ to Y$, and append
  1433. REM    it to your converted string */
  1434.   IF NUPOZ < 1 THEN
  1435.     NUPOZ = QSIZ - ABS(NUPOZ)
  1436.   END IF
  1437.   Y$ = MID$(Q$,NUPOZ,1)
  1438.   D$ = D$ + Y$
  1439. NEXT I
  1440.  
  1441. PRINT  "Original = ";C$
  1442. PRINT  "Modified = ";D$
  1443. END
  1444.  
  1445. REM /* This finds character X$ in array Q$ and returns an integer
  1446. REM    value of the location.  Called from the main loop. */
  1447. LOKPOZ:
  1448.   FOUND = 0
  1449.   POZ = 1
  1450.   TOP:
  1451.     IF FOUND = 1 THEN
  1452.       RETURN
  1453.     ELSE
  1454.       TMP$ = MID$(Q$,POZ,1)
  1455.       IF X$ = TMP$ THEN
  1456.         FOUND = 1
  1457.       END IF
  1458.       POZ = POZ + 1
  1459.       IF POZ > QSIZ THEN
  1460.         PRINT  "Error: Character '";X$"' not in array Q."
  1461.         END
  1462.       END IF
  1463.     END IF
  1464.   GOTO TOP
  1465.  
  1466. REM **********************************************************************
  1467.  
  1468. End of Program Listing 1
  1469.  
  1470.         This method, while extremely simple, tight, and fast, is not fool-
  1471. proof.  Most computers use the following algorithm for generating pseudo-
  1472. random number sequences: x(t+1) = ax(t) + b
  1473.         x(t+1) = next random number
  1474.         x(t) = previous random number
  1475.         a & b are constants that will cause a fairly even distribution
  1476.  
  1477.         For example, if you were using a three-bit system (8 possible postive
  1478. integers) you might make a = 3 & b = 7 (there's a reason behind using prime
  1479. numbers that is beyond the scope of this file.)  If you seed the argument with
  1480. RANDOMIZE 5 you would get the following:
  1481. First x: x = 3*5 + 7 | Since we're restricting ourselves to three bits, and
  1482.          22 won't fit in three bits, we'd need to perform a modula 8 on the
  1483.          number. (Modulo divides x by eight and keeps the remainder as the
  1484.          new value of x.)  So  MOD(22,8) is equal to 6 (16 + 6 = 22).
  1485.  
  1486.          Ok, let's do some simple mapping using our vowel set and the above
  1487. three-bit random number generator.  Let's say that the message reads "AAEOU"
  1488. Our first random number was 6.  Our map looks like "AEIOU12345".  POS(A) + 6
  1489. gives us 2 as the character.
  1490. Second x: x = 3*6 + 7 | MOD (25,8) = 1 | POS(A) + 1 gives us E.
  1491. Third  x: x = 3*1 + 7 | MOD (10,8) = 2 | POS(E) + 2 gives us O.
  1492. Fourth x: x = 3*2 + 7 | MOD (13,8) = 5 | POS(O) + 5 gives us 4.
  1493. Fifth  x: x = 3*5 + 7 | MOD (22,8) = 6 | POS(U) + 6 wraps around the map to A.
  1494.  
  1495.          So our original "AAEOU" is crytped into "2E04A".  This may at first
  1496. seem difficult to crack since 'A' mapped into a '2' on one pass and an 'E' on
  1497. the other, thus preventing a freuquency analysis from breaking the code.
  1498.         Unfortunately, if someone knows the random number algorithm, they can
  1499. easily hack out the key.  Since most of the people using this will be using it
  1500. on a pc, it would be trivial to get another pc to hack it out.  And even if you
  1501. protect your random number algorithm, it is still a straight linear algebra
  1502. problem that an AT could work on over a weekend and probably figure it out,
  1503. especially if there is a fairly small map to work with.
  1504.  
  1505.           Solution: What we need to do is combine the random mapping with a
  1506. random number generator that is tougher to figure out.  Enter cellular
  1507. automatons.
  1508.           CA's were first invented in the 1940's when John von Neumann (he of
  1509. the famous bottleneck) started to explore the mathmatic implications of very
  1510. simple machines.  CA's are made of geometric patterns of cells that change
  1511. their state at each tick of a clock according to a fixed rule.  Early work
  1512. provided automatons that could imitate a basic computer.  Since the CA's are
  1513. inherently parallel (the entire geometry is updated each clock tick) and easy
  1514. to put on a chip, there is speculation that the next generation of parallel
  1515. processing computers will use CA's as a base rather than the Turing machine
  1516. model.
  1517.            You have probably seen a CA at work and not realized it if you've
  1518. ever seen the computer graphic simulation 'LIFE' developed by John Conway at
  1519. MIT to model real organisms.  The rule for automaton reproduction was incr-
  1520. edibly simple: If a cell has two or three neighbors, no change in the cell.
  1521. Fewer or more neighbors, it starves or is overcrowded to death, and repro-
  1522. duction occurs when a blank space has exactly three neighbors.
  1523.         Using these simple rules, incredibly complex patterns can be produced.
  1524. Anything that can produce complex and varied results from a small algorithm is
  1525. a good target for a random number application.  Enter Steven Wolfram from the
  1526. Institute of Advanced Studies in Princeton, NJ.
  1527.         Wolfram has been doing research on one-dimensional cellular machines,
  1528. which have the advantage of being able to work with both todays machines and
  1529. future parallel machines.  Wolfram has developed an automaton that is a one
  1530. dimensional circular array modified by the rule:
  1531.  
  1532.         a(x,t) = a(x-1,t-1) XOR (a(x,t-1) OR a(x+1,t-1)) MOD k
  1533.  
  1534.         Where x is the position in the array and t is the time,
  1535.         k is the number of available characters (k = LEN(Q$)),
  1536.         and a is the one-dimensional array.
  1537.  
  1538.         This rule has several interesting properties.  The problem we had with
  1539. linear algorithms was that simple algebra could be used to analyze the
  1540. evolution of the algorithm (the patterns produced.)  All that you have to do is
  1541. figure out how *one* cell evolves, then apply that pattern across the entire
  1542. array.  In the above case, there is no way of analyzing the array at time t
  1543. without loading the initial conditions and running the whole thing.
  1544.         The second thing to note is that there are k to the power of w (where w
  1545. is the width (number of cells) in array a) possible states the machine can be
  1546. in, and not all of these states have a predecessor that generates it.  These
  1547. states are called 'Garden of Eden' states, and can only occur if they are set
  1548. as an ititial condition.
  1549.          As a result, this rule is neither a one-to-one mathmatical mapping,
  1550. nor is it and onto mapping of the set of arrays into itself.  In laymans'
  1551. terms, this means that for any given array state it is impossible to tell what
  1552. (if any) previous state generated it by mere pattern analysis.
  1553.          While this isn't a file on breaking codes- about the only way to crack
  1554. this one that's been discovered is to load *every* k**w state into memory and
  1555. page through them searching for a pattern.  This method can be defeated easily
  1556. by setting w to more than 30 cells (assuming k=256, all the ASCII characters.)
  1557. If you are using my array Q$, you might want to set w to 40 or more.  Since 256
  1558. to the 30th power is about a zillion bits, roughly equal to the largest memory
  1559. bank in existence, there isn't much chance of anyone breaking it.  For the
  1560. truly paranoid, set w to 50 and sleep easy at night.
  1561.  
  1562.          Anyway, back to the algorithm...
  1563.  
  1564.         Each of the cells is filled on one of the k integers from 0 to k-1,
  1565. giving each cell k possible states.  Wolfram found that the string of bits
  1566. occupying the 0 position (a(0,1), a(0,2), a(0,3)...) forms a random sequence
  1567. that passes all statistical tests, sometimes with better results than standard
  1568. DES algorithms.
  1569.         Let's break this down and see what it's doing.  First of all, we will
  1570. need two arrays.  Each array is set up thus:
  1571.  
  1572.                         Array for Time One
  1573.         |------|       |------|       |------|      |------|
  1574.   |---->|a(0,1)|------>|a(1,1)|------>|a(2,1)|----->|a(3,1)|-----|
  1575.   |     |------|       |------|       |------|      |------|     |
  1576.   |--------------------------------------------------------------|
  1577.  
  1578.                         Array for Time Two
  1579.         |------|       |------|       |------|      |------|
  1580.   |---->|a(0,2)|------>|a(1,2)|------>|a(2,2)|----->|a(3,2)|-----|
  1581.   |     |------|       |------|       |------|      |------|     |
  1582.   |--------------------------------------------------------------|
  1583.  
  1584.         The reason we need two arrays is so you can update the array without
  1585. destroying anything in it.  In other words, you start out with array 1 active,
  1586. then you update the array into array 2 and change the active array to 2.  On
  1587. the next clock tick you will update the active array (now 2) into the inactive
  1588. one (now 1) and set the active array back to 1.  You keep swapping like this.
  1589. Logically, you only have one array- the active one.
  1590.          To initialize the array, the ASCII values of each character in the key
  1591. are plugged into the first LEN(KEY$) spaces in the array.  If you want to use a
  1592. short key, modify the code to fill the *entire* array with values of the key
  1593. (keep repeating a loop from 1 to W pulling characters out of K).  Since the key
  1594. can be anything printable, use something 10-20 characters long that you can
  1595. remember- "HACK TO LIVE, LIVE TO HACK" is one of my favorites.  Anyway, if you
  1596. use a short (less than 10) key in this program, the distri- bution will be
  1597. skewed for the first W MOD LEN(KEY$) itereations of the automaton, but will
  1598. smooth out nicely after that.
  1599.           After the array is filled, it operates exactly like the first program
  1600. *except* when it need a random number of positions to move.  Then it drops
  1601. down, updates each cell in the automaton, and then reads the value in A(0,time)
  1602. as the random number to shift by.
  1603.           Let's look at the modified encryption code.
  1604.  
  1605. REM ************************************************************************
  1606. REM
  1607. REM  This is an modification of Program 1 that doesn't use a machine
  1608. REM  specific random number generator, but instead uses a cellular automaton
  1609. REM  algorithm.  W is the width of the actual automaton.  A is dimensioned
  1610. REM  at 32 to avoid having to reference element 0 of the array, which is
  1611. REM  legal on some systems and illegal on the others.  This way it can
  1612. REM  be implemented on anything.  Y is set for time 1, Y1 for time 2.
  1613. REM  These correspond to the second dimension in array A.
  1614. REM
  1615. REM ************************************************************************
  1616.  
  1617. W = 30
  1618. DIM A(32,2)
  1619. Y = 1
  1620. Y1 = 2
  1621.  
  1622. REM ************************************************************************
  1623. REM
  1624. REM  Once again, you can set this up to use files instead of strings. And
  1625. REM  note that, unlike the first example, the key doesn't have to be
  1626. REM  numeric.
  1627. REM
  1628. REM ************************************************************************
  1629.  
  1630. INPUT "String to be encoded"; C$
  1631. INPUT "Key Please! (Can be alpha-numeric) ";K$
  1632.  
  1633.  
  1634. REM ************************************************************************
  1635. REM
  1636. REM  This is where K$ is broken down into a series of characters and their
  1637. REM  ASCII value shoved sequentially into array A.
  1638. REM
  1639. REM ************************************************************************
  1640.  
  1641. FOR I = 1 TO LEN(K$)
  1642.   T$ = MID$(K$,I,1)
  1643.   A(I,Y1) = ASC(T$)
  1644. NEXT I
  1645.  
  1646.  
  1647. REM ************************************************************************
  1648. REM
  1649. REM  The only difference between encoding and decoding is which way you
  1650. REM  move in your Q$ array space.  Encoding takes the original and shifts
  1651. REM  to the right, decoding takes the codes value and shifts to the left.
  1652. REM
  1653. REM ************************************************************************
  1654.  
  1655. REREAD:
  1656.   INPUT "Encode or Decode ? ";A$
  1657.   A$=LEFT$(A$,1)
  1658.   IF A$="E" OR A$="e" THEN
  1659.     A=1
  1660.     GOTO HEAD
  1661.   END IF
  1662.   IF A$="D" OR A$="d" THEN
  1663.      A=-1
  1664.   ELSE
  1665.      GOTO REREAD
  1666.   END IF
  1667.  
  1668. REM ************************************************************************
  1669. REM
  1670. REM  Q$ contains all the characters that can be encoded.  Every encoded
  1671. REM  character will be mapped to a character in this array.  I haven't
  1672. REM  included any non-standard characters, so you will have to customize
  1673. REM  it to your particular keyboard/system.  I've included an error check
  1674. REM  that will abort the encryption if it encounters a character that isn't
  1675. REM  in Q$.  I have to use the STRING$ command to insert the spacebar and
  1676. REM  the quote into the string.  It could also be done with a ASC(##) in
  1677. REM  many basics.  You could expand this to include any non-printable
  1678. REM  characters you'd like so you could do non-text files.
  1679. REM
  1680. REM ************************************************************************
  1681.  
  1682. HEAD:
  1683.   SPACE = 32
  1684.   QUOTE = 34
  1685.   Q$="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
  1686.   Q$=Q$+"1234567890!@#$%^&*()-=_+[]$;:'.><,/?X|"
  1687.   Q$=Q$+STRING$(1,SPACE)+STRING$(1,QUOTE)
  1688.   QSIZ = LEN(Q$)
  1689.  
  1690.  
  1691. REM ************************************************************************
  1692. REM
  1693. REM  This is the main loop.  L = length of the string to encrypt.  In this
  1694. REM  example, I am only encrypting a single string.  Most people who will
  1695. REM  actually use this will change the FOR loop to run until an EOF is
  1696. REM  encountered in the input file.  Since the syntax for that will vary
  1697. REM  widely from system to system, I'll leave it out.
  1698. REM
  1699. REM ************************************************************************
  1700.  
  1701. L=LEN(C$)
  1702. FOR H = 1 TO L
  1703.  
  1704. REM /* Finds the character I in the input string */
  1705.   X$ = MID$(C$,H,1)
  1706.  
  1707. REM /* Finds the integer location of the character in Q$
  1708. REM    returns variable POZ */
  1709.   GOSUB LOKPOZ
  1710.  
  1711. REM /* CELLULAR updates the cells in the automaton, switches the active
  1712. REM    time value, and returns X as the number of positions to shift. */
  1713.   GOSUB CELLULAR
  1714.  
  1715. REM /* If you are encoding, you will shift to the right using addition.
  1716. REM    you take the modula base QSIZ to keep the new character within
  1717. REM    the bounds of Q$. */
  1718.   IF A = 1 THEN
  1719.     NUPOZ = (POZ + X) MOD QSIZ
  1720.   ELSE
  1721.  
  1722. REM /* Otherwise, you subtract, which takes a bit more math to keep
  1723. REM    up with.  Once you have the distance to shift, you must
  1724. REM    convert it to a positive integer and then subtract two to
  1725. REM    account for the head & tail of the array. */
  1726.     NUPOZ = (POZ - X) MOD QSIZ
  1727.     NUPOZ = NUPOZ - 2
  1728.       IF NUPOZ < 1 THEN
  1729.         NUPOZ = QSIZ - ABS(NUPOZ)
  1730.       END IF
  1731.     END IF
  1732.  
  1733. REM /* Now you assign the new character in array Q$ to Y$, and append
  1734. REM    it to your converted string */
  1735.   IF NUPOZ < 1 THEN
  1736.     NUPOZ = QSIZ - ABS(NUPOZ)
  1737.   END IF
  1738.   Y$ = MID$(Q$,NUPOZ,1)
  1739.   D$ = D$ + Y$
  1740. NEXT H
  1741.  
  1742. PRINT  "Original = ";C$
  1743. PRINT  "Modified = ";D$
  1744. END
  1745.  
  1746. REM /* This finds character X$ in array Q$ and returns an integer
  1747. REM    value of the location.  Called from the main loop. */
  1748. LOKPOZ:
  1749.   FOUND = 0
  1750.   POZ = 1
  1751.   TOP:
  1752.     IF FOUND = 1 THEN
  1753.       RETURN
  1754.     ELSE
  1755.       TMP$ = MID$(Q$,POZ,1)
  1756.       IF X$ = TMP$ THEN
  1757.         FOUND = 1
  1758.       END IF
  1759.       POZ = POZ + 1
  1760.       IF POZ > QSIZ THEN
  1761.         PRINT  "Error: Character '";X$"' not in array Q."
  1762.         END
  1763.       END IF
  1764.     END IF
  1765.   GOTO TOP
  1766.  
  1767. REM ***********************************************************************
  1768. REM
  1769. REM  This is the cellular automaton
  1770. REM
  1771. REM ***********************************************************************
  1772.  
  1773. CELLULAR:
  1774.  
  1775. REM /* Goes through the loop updating into the inactive time (1 or 2 dep-
  1776. REM    ending on how Y and Y1 are assigned) */
  1777.   FOR I = 1 TO W
  1778.     A(I,Y) = A(I-1,Y1) XOR (A(I,Y1) OR A(I+1,Y1))
  1779.   NEXT I
  1780.  
  1781. REM /* Updates the ends of the array (logical positions 0 and 31) that
  1782. REM    are used in calculating other fields. */
  1783.   A(0,Y) = A(W+1,Y1) XOR (A(0,Y1) OR A(1,Y1))
  1784.   A(W+1,Y) = A(W,Y1) XOR (A(W+1,Y1) OR A(0,Y1))
  1785.  
  1786. REM /* Assigns the first cell to X as a random number */
  1787.   X = A(1,Y)
  1788.  
  1789. REM /* Flips the active time */
  1790.   TMP = Y
  1791.   Y = Y1
  1792.   Y1 = TMP
  1793.  
  1794. RETURN
  1795.  
  1796.          Ok, let's trace through a *small* example.  Assume our earlier
  1797. map of "AEIOU12345" and an automaton of width 5.  For a key, we'll use
  1798. "A15".
  1799.  
  1800. 1) Assign ASC(A) to a(1,1), ASC(1) to a(2,1), ASC(5) to a(3,1).
  1801.    ("0" will represent an empty cell in this example.)
  1802.    A(time 1) = 0 65 49 53 0 0 0
  1803.    (Remember that an array of width 5 is going to have 7 actual elements)
  1804.  
  1805. 2) Now then, we want to encrypt the string "EE3"
  1806.    First, we locate where E is in our map. LOKPOZ("E") = 2
  1807.  
  1808. 3) Now then, we update the automaton.
  1809.    a(1,2) = 0 XOR (65 OR 49)
  1810.    a(2,2) = 65 XOR (49 OR 53)
  1811.    a(3,2) = 49 XOR (53 OR 0)
  1812.    a(4,2) = 53 XOR (0 OR 0)
  1813.    a(5,2) = 0 XOR (0 OR 0)
  1814.  
  1815.    Since this isn't a tutorial on binary numbers and boolean algebra, you'll
  1816.    have to trust me on this one...
  1817.  
  1818.    a(1,2) = 113
  1819.    a(2,2) = 116
  1820.    a(3,2) = 4
  1821.    a(4,2) = 53
  1822.    a(5,2) = 0
  1823.  
  1824. 4) Now we update the ends.
  1825.    a(0,2) = 0 XOR (0 OR 65)
  1826.    a(6,2) = 0 XOR (0 OR 0)
  1827.  
  1828.    Again...
  1829.    a(0,2) = 65
  1830.    a(6,2) = 0
  1831.  
  1832. 5) Now we switch the active time from 1 to 2, and our new automaton is
  1833.    a(time 2) = 65 113 116 4 53 0 0
  1834.  
  1835. 6) We then pull off a(1,2) as the number to shift by.
  1836.  
  1837. 7) Postion 2 + 113 (we're encoding, so we add) is 5 (modulo arithmatic.)
  1838.  
  1839. 8) "E" is encoded into "U".
  1840.  
  1841. 9) We repeat this two more times (you don't really want me to step through
  1842.    it all, do you?) and end up with the encrypted version.
  1843.  
  1844.          Well, that's going to pretty much wrap this file up.  If you are
  1845. interested in more files of this nature, let me know.  If you find this totally
  1846. confusing, but want to learn more, call The Phoenix Project at 512/441-3088
  1847. (300/1200/2400, 24 hours a day).  Our friendly and helpful LOD/H staff will be
  1848. glad to assist you.  Other people who you might want to talk to about
  1849. encryption include Dr. Cypher, Tuc, and Prime Suspect.
  1850.          Also, if you are interested in seeing the above algorithm applied in
  1851. other languages let me know.  If there's enough of a demand I'll release C,
  1852. Modula-2, and ADA versions.
  1853.  
  1854.        This has been a Legion of Doom/Legion of Hackers presentation!
  1855.  
  1856.                               The Mentor
  1857.                                  LOD/H
  1858.  
  1859. *****************************************************************************
  1860. References and Acknowledgments:
  1861.  
  1862. "How to Generate Cryptographically Strong Sequences of Pseudo-Random Bits";
  1863. M. Blum & S. Micali; SIAM Journal of Computing, vol. 13, p. 850 (1984)
  1864.  
  1865. "Functions of Random Variables"; John Freund & Ronald Walpole;
  1866. Mathmatical Statistics, 4th Edition; Prentice-Hall Inc., NJ; pp. 240-71
  1867.  
  1868. "Building an Encryption System"; Peter Wayner
  1869. Computer Language, Vol. 4, Num. 12, p. 67 (Dec. 1987 Issue)
  1870.  
  1871. "Random Sequence Generation by Cellular Automata"; Institute for Advanced
  1872. Study; Advances in Applied Mathmatics;
  1873.  
  1874. "Breaking Pseudo-Random Number Based Cryptographic Algorithms"; M. Vahle &
  1875. L. Tolendino;  CRYPTOLOGIA, Oct 1982, p. 319
  1876.  
  1877. Also my thanks to: TUC, The Leftist, Prime Suspect, and Dr. Cypher, who all
  1878.      contributed to this one way or another.
  1879.  
  1880. ***************************************************************************
  1881.  
  1882.  
  1883. The LOD/H Technical Journal, Issue #3: File 07 of 10
  1884.  
  1885.             IIIIIIIIII   RRRRRRRRRR   IIIIIIIII   SSSSSSSSSS
  1886.                 II       RR      RR      II       SS      SS
  1887.                 II       RR      RR      II       SS
  1888.                 II       RRRRRRRRR       II       SSSSSSSSS
  1889.                 II       RR  RR          II              SS
  1890.                 II       RR    RR        II       SS      SS
  1891.             IIIIIIIIII   RR      RR   IIIIIIIII   SSSSSSSSS
  1892.  
  1893.           #:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#
  1894.           |                                                   |
  1895.           #     Introduction to The Iris Operating System     #
  1896.           |                                                   |
  1897.           #                         by                        #
  1898.           |                                                   |
  1899.           #                     The Leftist                   #
  1900.           |                                                   |
  1901.           #              The Legion of Doom/Hackers           #
  1902.           |                                                   |
  1903.           #:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#
  1904.  
  1905.                                   IRIS
  1906.                 <INTERACTIVE REAL TIME INFORMATION SYSTEM>
  1907.  
  1908.     Iris is an operating system which most people have heard little or nothing
  1909. about.  Many Businesses across the country are starting to use computers which
  1910. support the IRIS operating system. IRIS is not new though, it was originally
  1911. written to run on PDP-11, Data General, and Royal Systems.  IRIS has grown in
  1912. popularity due to the major revisions which have been made over the years and
  1913. is a fairly easy system for anyone to learn.  This article, though not a
  1914. complete guide to IRIS, will give you the basic knowledge neccesary to
  1915. identify, enter, and access information once in.
  1916.  
  1917.  
  1918. Finding IRIS
  1919. ------------
  1920.  
  1921.     You'll know you've found an IRIS system by its login banner, which usually
  1922. looks like this:
  1923.  
  1924. Welcome to "IRIS" R9.1.4 timesharing
  1925.  
  1926. This is Dr. BOB'S OFFICE!
  1927.  
  1928. ACCOUNT ID?
  1929.  
  1930.  
  1931. Logging in
  1932. ----------
  1933.  
  1934.     To log into an IRIS system after connecting <at 7E1 usually> press the
  1935. escape key.  You should get a message asking for account ID at which point you
  1936. would enter your ID followed by a c/r.  You're in the system when you get a #
  1937. prompt.  If you've entered an incorrect ID, the normal error message would be:
  1938.  
  1939. INVALID
  1940.  
  1941.     The nice thing about IRIS from a hacker point of view is that it will allow
  1942. you to brute force hack your way in, never keeping a log of unsuccessful
  1943. tries, and never hanging up on you.
  1944.     If you don't think your ID is being entered properly, you can turn the
  1945. echo back on by first hitting a Control-E. If you suspect parity trouble on
  1946. your login <ie: the E key beeps every time you hit it> try hitting a Control-P
  1947. to change the parity.
  1948.  
  1949. Default Accounts
  1950. ----------------
  1951.  
  1952. Try the account names below, and also try them with 1 or 2 spaces after them in
  1953. upper and lower case.
  1954.  
  1955.  
  1956. ACCOUNT                COMMENTS                      Privelege level
  1957. DDDDDDD       DDDDDDDDDDDDDDDDDDDDDDDDDD        DDDDDDDDDDDDDDDDDDDDDDDDDD
  1958. MANAGER       < works 99% of the time >         3     full system priv's
  1959.  
  1960. BOSS          < manager account       >         3     full system priv's
  1961.  
  1962. SOFTWARE      < software dept account >         2     general user access
  1963.  
  1964. DEMO          < demonstration account >         1     scum of the earth priv's
  1965.  
  1966. PDP8          < always on rev 7.0     >         3     full system priv's
  1967.  
  1968. PDP11         < always on rev 7.0     >         3     full system priv's
  1969.  
  1970. ACCOUNTING    < accounting dept.      >         2     general user
  1971.  
  1972.      Also try the company's name, or its intials.  Sometimes system operators
  1973. place control characters in their ID's, or spaces <usually one, sometimes two>
  1974. at the end of their account names, this security 'trick' is used due to the
  1975. operating system not asking for passwords. Like PRIMOS version 18 systems, all
  1976. you needed was a valid username to get in. There are plans of implementing
  1977. passwords in the future for IRIS.
  1978.  
  1979.  
  1980. YOU'RE IN!
  1981. ----------
  1982.  
  1983. So you're in- hopefully with full priv's.
  1984.  
  1985.     The users Privilege Level may be 0, 1, 2, or 3 indicating General,
  1986. Privileged, Manager, or Superuser privileges respectively. Only the Superuser
  1987. account can access the ACCOUNTS file, but all level two accounts are given
  1988. most other privileges that a level 3 account have.
  1989.  
  1990.     If you were able to log in with a privilege level of 3, you'll be allowed
  1991. to run the program ACCOUNTUTILITY or ACCOUNTS, depending on the version of
  1992. IRIS is running.  This is almost always found on LU 0, along with all the
  1993. other system utilities.  ACCOUNTUTILITY is menu driven, and you should have no
  1994. problem using it.
  1995.  
  1996. Accounts File
  1997. -------------
  1998.  
  1999. The Accounts File contains the following information
  2000.  
  2001. Account ID
  2002. Assigned priority
  2003. Assigned Logical Unit #
  2004. Account# <Group and User>
  2005. Alloted CPU time <in seconds>
  2006. Alloted disk blocks
  2007. Number of disk blocks in use
  2008. Peak # of disk blocks in use
  2009. Net File Charges
  2010.  
  2011.  
  2012. ACCOUNTUTILITY
  2013. --------------
  2014.  
  2015.     This program is for editing the accounts on the system.  You must be a
  2016. manager on the system <level 3> to run this program, or else have a way to
  2017. change the protection of BOTH the accounts file, and the ACCOUNTUTILITY
  2018. program.  If this is done, anyone can run the program.  After typing
  2019. ACCOUNTUTILITY you'll get the following menu:
  2020.  
  2021. ACCOUNTS FILE MAINTENANCE  REV 2.2
  2022.  
  2023. (0) EXIT TO SYSTEM
  2024. (1) ADD NEW ACCOUNT
  2025. (2) MODIFY ACCOUNT
  2026. (3) DELETE ACCOUNT
  2027. (4) INQUIRE ACCOUNT
  2028. (5) LIST THE ACCOUNTS
  2029.  
  2030. ENTER FUNCTION NUMBER:
  2031.  
  2032. It's all pretty straightforward, I don't think I need to go on about this
  2033. feature...
  2034.  
  2035. What to do Inside
  2036. -----------------
  2037.  
  2038.     The first thing you want to do once inside IRIS is to issue the command PP
  2039. which will show you who's on, and what they're currently doing.  Sometimes PP
  2040. has been renamed to PORT ALL MONITOR. If you logged in and it said your
  2041. Logical Unit was not active, you must install the system under the MANAGER
  2042. account.  To do this, log in on a full privs account, and type IN, INSTALL, or
  2043. FASTINSTALL.  This should allow you to activate all the system's Logical
  2044. Units.  Normally, the Logical Units (referred to as LU's) range from 0-99, 99
  2045. being a ramdrive.  If you choose to just install Logical Unit number one, the
  2046. command would be INSTALL 0.1 and so on.  If you are told Logical Unit x
  2047. exists, change? DO NOT CHANGE IT!  Instead, attempt to install a Logical Unit
  2048. that doesn't already exist.
  2049.  
  2050. To list all the files on the Logical Unit assigned to your account, type LIBR.
  2051. To list only certain files type LIBR x where x = searchcriteria.
  2052. To list the files on another LU, type LIBR x/ where x = the LU number.
  2053. To list all the files that you have read access to, type LIBR @.
  2054. To list only files that belong to you, type LIBR @g,r where g is your group,
  2055.    and u is your user #.
  2056. To list files accessed within h hours, type LIBR >h where h is a decimal #.
  2057.  
  2058. Anyway, you'll see something like this:
  2059.  
  2060. #LIBR
  2061.  
  2062. LOGICAL UNIT #0       JUL 30, 1988  19:50:03
  2063.  
  2064. * FILENAME[VOL]  PROT   COST  SIZE  ACCOUNT  AGE  HSLA  TYPE  PRIV  HBA
  2065. S  ASM            33   $0.00    11    0, 1  11068 11068  401   3    400
  2066. B  RUN            33   $0.00    21    0, 1  11068     0  602   3    344
  2067. T  SU.DSUBS       22   $0.00    22    0, 1  11068     5   30   3      7
  2068.  
  2069. and so on....
  2070.  
  2071. Running Programs
  2072. ----------------
  2073.  
  2074.     Most Application Software for IRIS is written in business basic, which is
  2075. basic with extended functions specifically for business applications.
  2076.  
  2077. To execute a runnable file at the # prompt, just type the file's name.
  2078. To exit into basic, just type BASIC.
  2079. To run a program, simply type its name.
  2080. To load a program type BASIC LOAD x where x = filename.
  2081. To list a program once in basic, type X LIST X where, in both cases X = the
  2082.    line you want to list or simply type LIST to list all the lines of the
  2083.    program.
  2084.  
  2085.                     File Type Chart
  2086.  
  2087. Number        Letter                 File Type
  2088.  
  2089. 0               P               Permanent System File
  2090. 1               S               System processor or file
  2091. 2               B               BASIC processor or program
  2092. 3               A               Stand alone processor or program
  2093. 4               X               EXECUTE processor or program
  2094. 5               G               GPM program
  2095. 6               M               MUMPS processor or program
  2096. 7               W               COURSE WRITER processor or program
  2097. 20              Q               Stand alone compiler
  2098. 21              J               Stand alone relocating assembler
  2099. 22              L               Stand alone relocatable loader
  2100. 23              R               Relocatable binary object tape image
  2101. 24              I               Indexed relocatable binary library
  2102. 27              Z               Temporary file
  2103. 30              T               Text file
  2104. 31              F               Formatted data file
  2105. 32              C               Contiguous data file
  2106. 36              $               Peripheral device driver
  2107.  
  2108. Passworded Files
  2109. ----------------
  2110.  
  2111.     Sometimes a password will be added to the end of a file name to limit
  2112. access to users who have knowledge of the password.  To access a passworded
  2113. file, type the following: FILEX ^Epass^E
  2114.  
  2115. The ^E is correctly represented as Control-E.  The common defaults for
  2116. passworded files <especially on LU0> are the letter X and the word THINK.
  2117.  
  2118.  
  2119. Kicking Users off the System
  2120. ----------------------------
  2121.  
  2122.     This is something you do not want to do unless an emergency situation
  2123. arises, in which case you would issue the PPP command. This is the port
  2124. eviction utility.  It will then ask you which port you would like to evict or
  2125. you may type the word ALL to evict everyone but yourself.  This is useful if
  2126. you hang a printer port, or are afraid you may have dumped data to a printer
  2127. which is offline.
  2128.  
  2129.  
  2130. PORT.STAT
  2131. ---------
  2132.  
  2133.     This command gives you the status of a given port, and its channels. to
  2134. run it type:
  2135.  
  2136. PORT.STAT
  2137.  
  2138.  
  2139. PP
  2140. --
  2141.  
  2142.     PP lets you see who is on the system, what port they're on, what baud rate
  2143. they're running, and what process they're running. Just type PP from the #
  2144. prompt. IRIS will give you information about the ports on the system and then
  2145. will ask you if you would like channel status. Either type in the channel that
  2146. you wish to see the status of, or hit return to exit.
  2147.  
  2148.  
  2149. GAMES
  2150. -----
  2151.  
  2152.     Yes, there are even games on IRIS, all the old PDP games hunt the wumpus,
  2153. tic-tac-toe, etc...sure to provide hours of amusement.
  2154.  
  2155.  
  2156. Changing the Baud Rate of a Port
  2157. --------------------------------
  2158.  
  2159.     To change a port's baud rate, type PORT BAUD x where x is a standard baud
  2160. rate <110,300,600,1200,2400,9600,19200>.  Don't change the baud rate of the
  2161. port you are on. This command is useful for temporarily disabling a user.
  2162.  
  2163.  
  2164. Copying Files
  2165. -------------
  2166.  
  2167.     Copy is a general purpose command for moving data of any type from a
  2168. specified source to a specified destination.  Also, data from several sources
  2169. can be merged into one destination file.
  2170.  
  2171. The general form of the copy command is:
  2172.  
  2173. Copy dest = Source1,Source2   etc....
  2174.  
  2175. Where dest is the filename under which the destination file is to be built.
  2176.  
  2177.  
  2178. Mail
  2179. ----
  2180.  
  2181. To mail a one line message to another port, the following command applies:
  2182.  
  2183. MAIL p "Hello My name is Joe Comosolo" where p =  the port # to mail to.
  2184.  
  2185.  
  2186. Loading Text Files
  2187. ------------------
  2188.  
  2189. A text file can be loaded by use of the command:
  2190.  
  2191. EDIT SFILE,DFILE
  2192. an exclamation mark must be used to copy over an existing file.
  2193.  
  2194. A new text file may be created by typing:
  2195. EDIT,Filename
  2196.  
  2197. If you just want to examine a text file, then just type
  2198. EDIT Filename
  2199.  
  2200. Some systems also have the TYPE filename command.
  2201.  
  2202.  
  2203. BYELOG
  2204. ------
  2205.  
  2206. This command allows you to edit the login message you receive before you are
  2207. prompted for your account id.  The syntax is:
  2208.  
  2209. BYELOG message to be printed
  2210.  
  2211.  
  2212. Logging Off
  2213. -----------
  2214.  
  2215. >From the # prompt, type BYE and hit return.
  2216.  
  2217.  
  2218. Conclusion
  2219. ----------
  2220.  
  2221.     I hope that article file proves useful.  Keep it in your archives for the
  2222. next time you stumble onto an IRIS system. If you have any questions, comments,
  2223. or gripes, I can be reached on The Phoenix Project at 512/441-3088.
  2224.  
  2225.  
  2226. The LOD/H Technical Journal, Issue #3: File 08 of 11
  2227.  
  2228.  
  2229.            __________________________________________________________
  2230.          @@                                                          @@
  2231.        @@         Coin Service, The Central Office, and You            @@
  2232.      @@                                                                  @@
  2233.    @@                                   by                                 @@
  2234.    @@                                                                      @@
  2235.      @@                             Phase Jitter                         @@
  2236.        @@                                                              @@
  2237.          @@                        Legion of Doom!                   @@
  2238.            @@______________________________________________________@@
  2239.  
  2240.  
  2241.      In this file I will attempt to give a basic overview of how various
  2242. central offices handle coin service.  If you feel your interest grows due to
  2243. this file there are other good technical documents about coin service, i.e.
  2244. Bell System Practices, CDs, PDs ect..
  2245.  
  2246.  
  2247.      Coin service is differentiated from other services by a special class of
  2248. service.  All switching systems give -48 volt battery toward the coin phone on
  2249. the ring side of the line.  Coin-First lines have an open TIP during a normal
  2250. receiver-on-hook condition.  When a line goes off hook the central office
  2251. takes no action and in fact can not detect the off hook condition due to the
  2252. line's conditioning-for-ground start.   When the customer deposits money the
  2253. coin ground is extended to the ring side of the line. The ground signals the
  2254. line equipment in the central office as a to give a dial tone.
  2255.      Dial-Tone First offices give both the battery and ground to the coin
  2256. station, thus providing a dial tone equivalent to a POTS phone.  All coin
  2257. service is super current sensitive. (The central office must give at least 23
  2258. milliamps of line current and 41 milliamps of coin control current to the
  2259. farthest coin station.)
  2260.  
  2261.  
  2262.      The switching systems differ in the method which calls are handled.
  2263.  
  2264.  
  2265. No. 5 Crossbar
  2266.  
  2267.      The No. 5 crossbar coin-first offices must have a dual wound line relay
  2268. with both windings in series when dealing with a coin first situation.  If any
  2269. Coin-First lines are served in a No. 5 crossbar office the originating
  2270. registers must be able to desensitize the (pulsing) L relay by providing a
  2271. resistive ground throgh its tertiary winding via the coin class of service
  2272. relay.
  2273.      Crossbar offices can give coin return from Originating Registers,
  2274. TSPS/Cordboard trunks, Ring and Tone trunks, Announcement trunks, and Coin
  2275. Supervisory circuits.  Coin collect current is only given through
  2276. TSPS/Cordboard trunks and Coin Supervisory circuits.  The only circuit that
  2277. can handle a stuck coin test is the coin supervisory circuit.
  2278.      Crossbar offices handle coin actions on locally completed calls in the
  2279. coin supervisory circuit (CS).  All trunks must have access to the CS circuit
  2280. or use coin junctors or coin 1A0 trunks that have such access.  The use of
  2281. coin junctors or coin 1A0 trunks elimnate the need for other trunks to be hard
  2282. wired to the Coin Supervisory Link.  When the trunk's supervisory relays show
  2283. a coin action is needed the trunk searches for an idle Coin Supervisory
  2284. Circuit through the Coin Supervisory Link.  The bridged connection allows the
  2285. Coin Supervisory Circuit to give the proper collect or return current toward
  2286. the coin telephone and test to see if the action was successful.
  2287.      Crossbar offices handle coin actions required by DDD calls or TSPS
  2288. operators in the No. 5 crossbar TSPS trunk.  The TSPS base unit signals the
  2289. No. 5 office by either frequencies or multiwinks.  The No. 5 office receives
  2290. these signals and the trunk applies one pulse of coin collect or return or
  2291. ring back.  The No. 5 TSPS trunk dose not make a test to see if the required
  2292. coin action is successful.  If the coin is still present the call is dropped
  2293. and the coin remains in the trap.
  2294.  
  2295.  
  2296. ESS
  2297.  
  2298.      ESS offices provide all coin control actions from the Coin Control
  2299. Circuit.  The Coin Control Circuit is switched to a customers line under
  2300. program control.  The Coin Control Circuits always make a stuck coin test at
  2301. the end of a call.
  2302.      ESS offices handle coin actions required by DDD or TSPS operators by
  2303. scanning the TSPS trunk looking for any control signals from the TSPS base
  2304. unit.  When the ESS office sees a request on the TSPS trunk the ESS office
  2305. opens the talking path and attaches a multifrequency (MF) reciever.  The MF
  2306. reciever looks at the tones being sent from the TSPS base unit transmitter and
  2307. checks if the signal requested is a  coin collect, coin return, ring back, or
  2308. operator attached.
  2309.      Dial-Tone First (DTF) offices not equipped with expanded In-Band
  2310. Signaling give +48V talk battery during operator attached and 48V talk
  2311. batttery during the rest of the call.  If the TSPS signals for coin return the
  2312. ESS office will open the talk path again, release the MF receiver and switch
  2313. the line to the Coin Control Circuit which applies  -130V  coin return
  2314. potential.  After the coin control function is finished the system will make
  2315. on recycle attempt if the coin ground is still present.
  2316.      Local calls are handled within the ESS machine.  When a coin control
  2317. function is required the program momentarily opens the talk path and switches
  2318. the line to a Coin Control C  cuit which applies the required current.
  2319.  
  2320. Step By Step
  2321.      Coin lines in a Step By Step area are served on dedicated Line Finder
  2322. groups.  The Line Finders are hardwired to a coin box trunk and then cabled to
  2323. a first selector appearance.
  2324.      Step By Step offices can give coin return from coin box trunks,
  2325. TSPS/Cordboard trunks, and other miscellaneous trunks. (My knowledge of Step
  2326. By Step is vague, it's kind of like trying to research dinosaurs.)
  2327.      Step By Step offices handle coin actions on local calls in the coin box
  2328. trunks.  The coin box trunk applies the coin control current through the
  2329. winding of a relay to the coin station hopper trigger ground.   When the coin
  2330. station ground disappears, the coin box trunk relay releases and allows the
  2331. connection to restore to normal.  Some Step By Step offices have a timed
  2332. release circuit that will time out after about eight attempts of coin control
  2333. action, peg the stuck coin register, then release.  If the timed release
  2334. circuit is not provided and a coin ground can not be removed, the circuit must
  2335. be manually released.
  2336.      Step By Step offices handle coin actions required by DDD calls or TSPS
  2337. operators in the Step By Step TSPS trunk.  The TSPS base unit signals the Step
  2338. office by either frequencies or multiwinks.  The Step office trunk recicves
  2339. these signals and trunk applies one pulse of coin collect, coin return or ring
  2340. back.  The trunk does not make a test to see if the action was successful.
  2341.      If a DDD call was completed to a busy number the Step By Step TSPS trunk
  2342. will apply one quick pu  e of coin return toward the coin station,  then the
  2343. coin box will check to see if the coin ground has disappeared.  If the ground
  2344. is still present the coin box trunk will repeat the attempt to collect the
  2345. coin.
  2346.  
  2347.  
  2348.      If you have any further questions about how the central  office handles
  2349. coin service or about coin service in general, I can be reached via E-mail on
  2350. The Phoenix Project at 512/441-3088.
  2351.  
  2352.           Oct 1988 - Phase Jitter....Legion of Doom/Hackers!
  2353.  
  2354.  
  2355.  
  2356.  
  2357.  
  2358.  
  2359.  
  2360. The LOD/H Technical Journal, Issue #3: File 09 of 11
  2361.  
  2362. ----------------> UNIX Password Hacker: Courtesy of USENET <------------------
  2363.  
  2364.     The following is an extensive unix password hacking program taken off
  2365. USENET awhile back. It resembles Shooting Sharks' HPW.C program in some ways
  2366. but this program has more options. Read the REM statements to determine what
  2367. options you wish to enable. If nothing else, this program can give those who
  2368. wish to write a similar program an idea of how and what you want to put in it.
  2369.  
  2370.  
  2371. - - - - - - - - - - - - - - - - - cut here - - - - - - - - - - - - - - - - - -
  2372. -
  2373.  
  2374.  
  2375. #include <stdio.h>
  2376. #include <pwd.h>
  2377. #include <ctype.h>
  2378.  
  2379. #define index strchr
  2380. #ifndef lint
  2381. static char *rcsid = "$Header: pwchkr.c,v 1.2 85/11/30 22:42:07 richl Exp $";
  2382. #endif
  2383.  
  2384. /*
  2385.  * Warning: this program burns a lot of cpu.
  2386.  */
  2387. /*
  2388.  * pwchkr - find accounts with poor passwords
  2389.         Date: Tue, 29 Nov 83 18:19:32 pst
  2390.         From: leres%ucbarpa@Berkeley (Craig Leres)
  2391.             Modified by Seth Alford, Roger Southwick, Steve Dum, and
  2392.             Rick Lindsley for Tektronix
  2393.  */
  2394.  
  2395. /*
  2396.  *      $Log:   pwchkr.c,v $
  2397.  *      Revision 1.2  85/11/30  22:42:07  richl
  2398.  *      Added code to allow for password aging.
  2399.  *
  2400.  *      Revision 1.1  85/09/10  16:00:56  root
  2401.  *      Initial revision
  2402.  *
  2403.  *
  2404.  * By default, this program only checks for accounts with passwords the same
  2405.  * as the login name. The following options add more extensive checking. (The
  2406.  * tradeoff is cpu time -- with all options enabled it can run into the 100's
  2407.  * of MINUTES.) Any argument that does not begin with a "-" is assumed to be
  2408.  * a file name. (A single '-' means stdin.) If no file name is given,
  2409.  * /etc/passwd is used.
  2410.  *
  2411.  * Options:
  2412.  *
  2413.  *              -v:     verbose -- list all guesses on stdout
  2414.  *              -u:     output teh username on the line of the password file
  2415.  *                      currently being checked. If the program stops
  2416.  *                      abruptly you will then know how far it got.
  2417.  *              -w file: use the list of words contained in "file" as likely
  2418.  *                      passwords. Words in the file are one to a line.
  2419.  *              -b:     check all guesses backwards too
  2420.  *              -g:     use the Full Name portion of the gecos field to
  2421.  *                      generate more guesses
  2422.  *              -s:     check the single letters a-z, A-Z, 0-9 as passwords
  2423.  *              -c:     with each guess, check for all-lowercase and
  2424.  *                      all-uppercase versions too.
  2425.  *              -n:     complain about null passwords (default is to keep
  2426. quiet)
  2427.  */
  2428.  
  2429. int verbose = 0, singles = 0, backwards = 0, checkgecos = 0, checkcase = 0,
  2430.     chknulls = 0, users = 0, chkwords = 0;
  2431.  
  2432. char *index(), *reverse();
  2433. long atol();
  2434. FILE *fopen();
  2435. char *fgets();
  2436.  
  2437. char PASSWD[] = "/etc/passwd";
  2438. char EMPTY[] = "";
  2439. static FILE *pwf = NULL, *wlf = NULL;
  2440. char line[BUFSIZ+1];
  2441. struct passwd passwd;
  2442. char    *Curpw, *Wordlist = NULL;
  2443.  
  2444. main(argc, argv)
  2445. char **argv;
  2446. $
  2447.     register int i;
  2448.     register char *arg;
  2449.     int onedone = 0;
  2450.  
  2451.  
  2452.     for (i = 1; i < argc; i++)
  2453.         if ((arg = argv[i]) && *arg == '-')
  2454.             while (*++arg) $
  2455.                 switch (*arg) $
  2456.                     case 'n':
  2457.                         /*
  2458.                          * complain about null passwords
  2459.                          */
  2460.                         chknulls++;
  2461.                         break;
  2462.                     case 'c':
  2463.                         /*
  2464.                          * check cases
  2465.                          */
  2466.                         checkcase++;
  2467.                         break;
  2468.                     case 'g':
  2469.                         /*
  2470.                          * use gecos
  2471.                          */
  2472.                         checkgecos++;
  2473.                         break;
  2474.                     case 'v':
  2475.                         /*
  2476.                          * turn on motormouth
  2477.                          */
  2478.                         verbose++;
  2479.                         break;
  2480.                     case 'b':
  2481.                         /*
  2482.                          * check all attempts forwards and backwards
  2483.                          */
  2484.                         backwards++;
  2485.                         break;
  2486.                     case 's':
  2487.                         /*
  2488.                          * carry out a more intensive search, checking for
  2489.                          * single letter passwords
  2490.                          */
  2491.                         singles++;
  2492.                         break;
  2493.                     case 'u':
  2494.                         /*
  2495.                          * print out users as testing
  2496.                          */
  2497.                         users++;
  2498.                         break;
  2499.                     case 'w':
  2500.                         /*
  2501.                          * consult word list of likely passwords
  2502.                          */
  2503.                         if ((Wordlist = argv[i+1]) == NULL) $
  2504.                             fprintf(stderr,
  2505.                                 "%s: No file supplied with -w optionXn",
  2506.                                 argv[0]);
  2507.                             exit (1);
  2508.                             
  2509.                         argv[i+1] = NULL;
  2510.                         break;
  2511.                     case 'X0':
  2512.                         /*
  2513.                          * read from stdin
  2514.                          */
  2515.                         break;
  2516.                     default:
  2517.                         fprintf(stderr,
  2518.                             "%s: unknown option '%c'. Options are:Xn",argv[0],
  2519.                             *arg);
  2520.                         /* FALL THRU */
  2521.                     case '-':
  2522.                         fprintf(stderr,"-v:XtXtverbose -- list all guesses on
  2523. stdoutXn");
  2524.                         fprintf(stderr,"-u:XtXtoutput the username currently
  2525. being checkedXn");
  2526.                         fprintf(stderr,"-w file:Xtconsult the indicated file
  2527. for words to check as passwordsXn");
  2528.                         fprintf(stderr,"-b:XtXtcheck all guesses forwards and
  2529. backwardsXn");
  2530.                         fprintf(stderr,"-g:XtXtuse the Full name portion of the
  2531. gecos field for more guessesXn");
  2532.                         fprintf(stderr,"-s:XtXtcheck the single letters a-z,
  2533. A-Z, 0-9 as passwordsXn");
  2534.                         fprintf(stderr,"-c:XtXtcheck the all-upper and
  2535. all-lower case version of each guessXn");
  2536.                         fprintf(stderr,"-n:XtXtcomplain about null
  2537. passwordsXn");
  2538.                         exit(1);
  2539.                     
  2540.                 argv[i] = NULL;
  2541.                 
  2542.  
  2543.     for (i = 1; i < argc; i++) $
  2544.         if (argv[i] == NULL) continue;
  2545.         onedone++;
  2546.         if (*(argv[i]) == '-') $
  2547.             /*
  2548.              * read from stdin; we'll cheat and set pwf directly
  2549.              */
  2550.             pwf = stdin;
  2551.             chkpw();
  2552.             /*
  2553.              * don't fclose stdin!
  2554.              */
  2555.             clearerr(stdin);
  2556.             
  2557.         else $
  2558.             if (setpwent(argv[i])) $
  2559.                 perror(argv[i]);
  2560.                 continue;
  2561.                 
  2562.             Curpw = argv[i];
  2563.             chkpw();
  2564.             endpwent();
  2565.             
  2566.         
  2567.     if (!onedone) $
  2568.         Curpw = NULL;
  2569.         chkpw();
  2570.         
  2571.     exit(0);
  2572. 
  2573.  
  2574. #define ARB_CONST       30000
  2575.  
  2576. chkpw()
  2577.  
  2578. $
  2579.     register char       *cp, *cp2;
  2580.     register struct passwd *pwd;
  2581.     struct passwd       *getpwent();
  2582.     char                guess[100];
  2583.     char                *wordarray[ARB_CONST];
  2584.     char                *malloc(), **wordptr, **endptr;
  2585.     int                 done = 0;
  2586.  
  2587.  
  2588.     if (Wordlist)
  2589.     $
  2590.         if ((wlf = fopen(Wordlist,"r")) == NULL)
  2591.         $
  2592.             perror(Wordlist);
  2593.             exit(1);
  2594.         
  2595.  
  2596.         wordptr = wordarray;
  2597.         /*
  2598.          * note that endptr points to space OUTSIDE of wordarray
  2599.          */
  2600.         endptr = wordarray + (sizeof(wordarray)/sizeof(char *));
  2601.  
  2602.         while (fscanf(wlf,"%[^Xn]Xn",guess) != EOF)
  2603.         $
  2604.             if (wordptr == endptr)
  2605.             $
  2606.                 fprintf(stderr,"Ran out of wordlist space. ARB_CONST %d must be
  2607. too small.Xn", ARB_CONST);
  2608.                 exit(1);
  2609.             
  2610.             if ((*wordptr = malloc(1+strlen(guess))) == NULL)
  2611.             $
  2612.                 fprintf(stderr,"malloc: no more memory for wordlistXn");
  2613.                 exit (1);
  2614.             
  2615.             strcpy(*wordptr,guess);
  2616.             wordptr++;
  2617.         
  2618.         *wordptr = NULL;
  2619.     
  2620.  
  2621.     while ((pwd = getpwent()) != 0 ) $
  2622.  
  2623.         if (verbose || users) $
  2624.             if (Curpw == NULL)
  2625.                 printf("Xt%s X"%sX"Xn", pwd->pw_name, pwd->pw_gecos);
  2626.             else
  2627.                 printf("%s -- Xt%s X"%sX"Xn", Curpw, pwd->pw_name,
  2628.                     pwd->pw_gecos);
  2629.             fflush(stdout);
  2630.             
  2631.         if (*pwd->pw_passwd == 'X0') $
  2632.             if (chknulls) $
  2633.                 if (Curpw == NULL)
  2634.                     printf("Problem: null passwd:Xt%sXtshell: %sXn",
  2635.                         pwd->pw_name, pwd->pw_shell);
  2636.                 else
  2637.                     printf("%s -- Problem: null passwd:Xt%sXtshell: %sXn",
  2638.                         Curpw, pwd->pw_name, pwd->pw_shell);
  2639.                 fflush(stdout);
  2640.                 
  2641.             continue;
  2642.         
  2643.         /*
  2644.          * Try the user's login name
  2645.          */
  2646.         if (uandltry(pwd,pwd->pw_name))
  2647.             continue;
  2648.  
  2649.         /*
  2650.          * Try names from the gecos field
  2651.          */
  2652.         if (checkgecos) $
  2653.             strcpy(guess, pwd->pw_gecos);
  2654.             cp = guess;
  2655.             if (*cp == '-') cp++;               /* special gecos field */
  2656.             if ((cp2 = index(cp, ';')) != NULL)
  2657.                 *cp2 = 'X0';
  2658.  
  2659.             for (;;) $
  2660.                 if ((cp2 = index(cp, ' ')) == NULL) $
  2661.                     if (uandltry(pwd,cp))
  2662.                         done++;
  2663.                     break;
  2664.                     
  2665.  
  2666.                 *cp2 = 'X0';
  2667.  
  2668.                 if (uandltry(pwd,cp)) $
  2669.                     done++;
  2670.                     break;
  2671.                     
  2672.                 cp = ++cp2;
  2673.                 
  2674.             
  2675.  
  2676.         if (!done && Wordlist)
  2677.         $
  2678.             /*
  2679.              * try the words in the wordlist
  2680.              */
  2681.             wordptr = wordarray;
  2682.             while (endptr != wordptr)
  2683.             $
  2684.                 if (*wordptr == NULL)
  2685.                     break;
  2686.                 if (uandltry(pwd,*wordptr++))
  2687.                 $
  2688.                     done++;
  2689.                     break;
  2690.                 
  2691.             
  2692.         
  2693.         if (!done && singles) $
  2694.             /*
  2695.              * Try all single letters
  2696.              * (try digits too .  --Seth)
  2697.              */
  2698.             guess[1] = 'X0';
  2699.             for (guess[0]='a'; guess[0] <= 'z'; guess[0]++)
  2700.                 if (try(pwd,guess))
  2701.                     break;
  2702.             for (guess[0]='A'; guess[0] <= 'Z'; guess[0]++)
  2703.                 if (try(pwd,guess))
  2704.                     break;
  2705.             for (guess[0]='0'; guess[0] <= '9'; guess[0]++)
  2706.                 if (try(pwd,guess))
  2707.                     break;
  2708.             
  2709.     
  2710. 
  2711.  
  2712. /*
  2713.  * Stands for "upper and lower" try.  Calls the "real" try, below,
  2714.  * with the supplied version of the password, and with
  2715.  * an upper and lowercase version of the password. If the user doesn't
  2716.  * want to try upper and lower case then we just return after the one
  2717.  * check.
  2718. */
  2719.  
  2720. uandltry (pwd,guess)
  2721. char *guess;
  2722. struct passwd *pwd;
  2723. $
  2724.     register char *cp;
  2725.     char buf[100];
  2726.     int alllower, allupper;
  2727.  
  2728.     alllower = allupper = 1;
  2729.  
  2730.     if (try(pwd,guess) || (backwards && try(pwd,reverse(guess)))) return (1);
  2731.  
  2732.     if (!checkcase) return(0);
  2733.  
  2734.     strcpy (buf, guess);
  2735.     cp = buf-1;
  2736.     while (*++cp) $
  2737.         if (isupper(*cp))
  2738.             alllower = 0;
  2739.         if (islower(*cp))
  2740.             allupper = 0;
  2741.         
  2742.  
  2743.     if (!allupper) $
  2744.         for ( cp=buf; *cp != 'X0'; cp++)
  2745.             if (islower (*cp))
  2746.                 *cp += 'A' - 'a';
  2747.  
  2748.         if (try(pwd,buf) || (backwards && try(pwd,reverse(buf)))) return (1);
  2749.         
  2750.  
  2751.     if (!alllower) $
  2752.         for ( cp = buf; *cp != 'X0'; cp++)
  2753.             if (isupper (*cp))
  2754.                 *cp += 'a' - 'A';
  2755.  
  2756.         if (try(pwd,buf) || (backwards && try(pwd,reverse(buf)))) return (1);
  2757.         
  2758.     return (0);
  2759. 
  2760.  
  2761. try(pwd,guess)
  2762. char *guess;
  2763. register struct passwd *pwd;
  2764. $
  2765.     register char  *cp;
  2766.     char   *crypt ();
  2767.  
  2768.     if (verbose) $
  2769.         if (Curpw == NULL)
  2770.             printf ("Trying X"%sX" on %sXn", guess, pwd -> pw_name);
  2771.         else
  2772.             printf ("%s -- Trying X"%sX" on %sXn", Curpw, guess,
  2773.                 pwd -> pw_name);
  2774.         fflush (stdout);
  2775.         
  2776.     if (! guess || ! *guess) return(0);
  2777.     cp = crypt (guess, pwd -> pw_passwd);
  2778.     if (strcmp (cp, pwd -> pw_passwd))
  2779.         return (0);
  2780.     if (Curpw == NULL)
  2781.             printf ("Problem: Guessed:Xt%sXtshell: %s passwd: %sXn",
  2782.                 pwd -> pw_name, pwd -> pw_shell, guess);
  2783.     else
  2784.             printf ("%s -- Problem: Guessed:Xt%sXtshell: %s passwd: %sXn",
  2785.                 Curpw, pwd -> pw_name, pwd -> pw_shell, guess);
  2786.     fflush (stdout);
  2787.     return (1);
  2788. 
  2789. /* end of PW guessing program */
  2790.  
  2791. #define MAXUID 0x7fff   /* added by tonyb 12/29/83 */
  2792.                         /* altered to a reasonable number - mae 8/20/84 */
  2793.  
  2794. /*
  2795.  * Add a parameter to "setpwent" so I can override the file name.
  2796.  */
  2797.  
  2798. setpwent(file)
  2799. char *file;
  2800. $
  2801.         if ((pwf = fopen(file,"r")) == NULL)
  2802.             return(1);
  2803.         return(0);
  2804. 
  2805.  
  2806. endpwent()
  2807.  
  2808. $
  2809.     fclose(pwf);
  2810.     pwf = NULL;
  2811. 
  2812.  
  2813. char *
  2814. pwskip(p)
  2815. register char *p;
  2816. $
  2817.         while(*p && *p != ':' && *p != 'Xn')
  2818.                 ++p;
  2819.         if(*p == 'Xn')
  2820.                 *p = 'X0';
  2821.         else if(*p)
  2822.                 *p++ = 'X0';
  2823.         return(p);
  2824. 
  2825.  
  2826. struct passwd *
  2827. getpwent()
  2828. $
  2829.         register char *p;
  2830.         long    x;
  2831.  
  2832.         if(pwf == NULL)
  2833.             if (setpwent(PASSWD)) $
  2834.                 perror(PASSWD);
  2835.                 return(NULL);
  2836.                 
  2837.         p = fgets(line, BUFSIZ, pwf);
  2838.         if(p == NULL)
  2839.                 return(0);
  2840.         passwd.pw_name = p;
  2841.         p = pwskip(p);
  2842.         passwd.pw_passwd = p;
  2843.         p = pwskip(p);
  2844.         x = atol(p);
  2845.         passwd.pw_uid = (x < 0 || x > MAXUID)? (MAXUID+1): x;
  2846.         p = pwskip(p);
  2847.         x = atol(p);
  2848.         passwd.pw_gid = (x < 0 || x > MAXUID)? (MAXUID+1): x;
  2849.         passwd.pw_comment = EMPTY;
  2850.         p = pwskip(p);
  2851.         passwd.pw_gecos = p;
  2852.         p = pwskip(p);
  2853.         passwd.pw_dir = p;
  2854.         p = pwskip(p);
  2855.         passwd.pw_shell = p;
  2856.         (void) pwskip(p);
  2857.  
  2858.         p = passwd.pw_passwd;
  2859. /*      while(*p && *p != ',')
  2860.                 p++;
  2861.         if(*p)
  2862.                 *p++ = 'X0';
  2863.         passwd.pw_age = p;
  2864. */
  2865.         return(&passwd);
  2866.  
  2867. 
  2868.  
  2869.  
  2870. /*
  2871.  * reverse a string
  2872.  */
  2873. char *reverse(str)
  2874. char *str;
  2875.  
  2876. $
  2877.     register char *ptr;
  2878.     register int len;
  2879.     char        *malloc();
  2880.  
  2881.     if ((ptr = malloc((len = strlen(str))+1)) == NULL)
  2882.         return(NULL);
  2883.     ptr += len;
  2884.     *ptr = 'X0';
  2885.     while (*str && (*--ptr = *str++))
  2886.         ;
  2887.     return(ptr);
  2888. 
  2889.  
  2890.  
  2891. - - - - - - - - - - - - - - - - - cut here - - - - - - - - - - - - - - - - - -
  2892. -
  2893.  
  2894. The LOD/H Technical Journal, Issue #3: File 10 of 11
  2895.  
  2896.  ----------------> Clearing up the Mythical LOD/H Busts <------------------
  2897.  
  2898.  
  2899.     Following is an article taken from Pirate-80 that Scan Man typed up which
  2900. talks about the summer busts of 87.  They called it the "LOD" case but as
  2901. usuall, they were disillusioned.  Our guess is that Oryan Quest was one of the
  2902. first to be investigated, and due to his calling of other hackers when a DNR
  2903. was on his line, led the authorities to the others who were eventually
  2904. visited.  Oryan claimed he was in LOD and this is where they must have gotten
  2905. the idea that everyone he spoke to was in LOD also.  In this respect the
  2906. article is rather humorous in that they caught people who were not in LOD/H.
  2907. Normally we would not put reprints of magazine articles in the LOD/H Technical
  2908. Journal, but seeing how it is relevant in clearing up any misconceptions, we
  2909. decided to put it in.
  2910.  
  2911. ------------------------------------------------------------------------------
  2912. Remember, Oryan Quest is *NOT* now, *NEVER* has, and *NEVER* will be in LOD/H!
  2913. ------------------------------------------------------------------------------
  2914.  
  2915. From: SCAN MAN
  2916. To: ALL
  2917. Subj: LEGION OF DOOM BUST
  2918.  
  2919.  
  2920. WAR AGAINST PHONE HACKING HEATS UP
  2921. BY GREGG PEARLMAN, ANTIC ASSISTANT EDITOR
  2922.  
  2923. Computer break-ins are no longer viewed as harmless pranks.  For example,
  2924. unauthorized computer access is a misdemeanor under 502PC of the California
  2925. Penal Code if you just trespass and browse around -- and if it's your first
  2926. offense.
  2927. But:  "Any person who maliciously accesses, alters, deletes, damages, destroys
  2928. or disrupts the operation of any computer system, computer network, computer
  2929. program or data is guilty of public offense" -- a felony under Section C of
  2930. that code.  Even changing a password to "Gotcha" is a felony if it can be
  2931. proven that it was a "malicious access."
  2932. In California, the maximum punishment is state imprisonment, a $10,000 fine and
  2933. having your equipment confiscated.  The penalty depends on who you are, your
  2934. prior record and the seriousness of the crime.
  2935. And you don't have to, for instance, breach national security to be guilty of a
  2936. felony.  Accessing even a simple system of a small company could damage vital
  2937. data for more than a year's worth of business, especially if that company
  2938. didn't properly back up its data.
  2939. There are all kinds of computer crime.  Stealing an automated teller machine
  2940. card and withdrawing money from an account is a computer crime because you're
  2941. using a computer to get money out of a system.  But simply trespassing in a
  2942. system and not doing any damage is normally a misdemeanor, according to Sgt.
  2943. John McMullen of the Stanford University Police Services.  This kind of crime
  2944. has become very common. "Every kid with a computer is tempted," he said.
  2945. Unfortunately, it can take months to complete an investigation.  For instance,
  2946. the so-called "LEGION OF DOOM" case, beginning in September, 1986, took 10
  2947. months to solve and involved people in Maryland, New York, Pennsylvania, Oregon
  2948. and California.
  2949. If someone breaks into the computers of, for example, California's Pacific
  2950. Bell, and the break-in is severe, Pacific Bell Security gets warrants issued,
  2951. and then, with the police, confiscates computers, manuals, telephone lists and
  2952. directories -- all related equipment.  It's common for the computer to be tied
  2953. up for a few months as evidence. (And by the time Pacific Bell Security does
  2954. get involved, the evidence is usually overwhelming -- the conviction rate is
  2955. extremely high.)
  2956. "Whenever I'm involved in a case," said McMullen, "I ask the judge for
  2957. permission to confiscate the equipment.  That's one big incentive for hackers
  2958. not to do this kind of stuff. I haven't had any repeaters, but I know of one
  2959. case where the guy probably WILL do it again when he gets out.
  2960. "Usually the shock of what happens to a juvenile's parents -- who bought the
  2961. equipment and watched it get confiscated -- is enough to make them stop. But we
  2962. don't really have enough cases to know what the parents do."
  2963.  
  2964.  
  2965. ACCESS
  2966.  
  2967. "It's easy for hackers to find company phone numbers," said Daniel Suthers,
  2968. Atari user and operations manager at Pacific Bell in Concord, California.
  2969. "Most large companies have a block of 500 to 1,000 phone numbers set aside for
  2970. their own use.  At least one line will have a modem.
  2971. "People post messages on hacker/phreaker bases on some BBS's and say 'I don't
  2972. know who this phone number belongs to, but it's a business, judging by the
  2973. prefix, and has a 1200-baud tone.' Then it's open season for the hackers and
  2974. phreakers."
  2975.  
  2976. Phreakers aren't much different than hackers -- they're just specifically
  2977. telephone-oriented.  In "CompuTalk: Texas-Sized BBS" (Antic, August 1987),
  2978. sysop Kris Meier discussed phreakers who appear to have called from phone
  2979. numbers other than the ones they were actually using.  A computer isn't needed
  2980. to do this -- it's usually done with a "blue box."
  2981.  
  2982. "The blue boxes were used mostly in the late 1960s and early '70s," said
  2983. McMullen.  "They fool the network and let people make free long distance calls
  2984. -- a tone generator simulates the signalling codes used by long distance
  2985. operators.  The boxes were phased out a couple of years ago, though:  they no
  2986. longer let hackers access AT&T, but Sprint and MCI can be accessed by something
  2987. similar.  However, computer programs are normally used now."
  2988.  
  2989. To get long-distance phone service, hackers now use one of several programs
  2990. passed among other hackers (on bulletin boards, for example).  They find the
  2991. local access number for Sprint or MCI and then run the program -- perhaps for a
  2992. few days.  It generates and dials new phone numbers, and the hackers can check
  2993. to see how many new or free codes they've turned up.
  2994.  
  2995. They can post the codes on a BBS, and their friends will use them until they
  2996. get stopped by the long-distance company -- depending on how long it takes the
  2997. company to realize that these numbers hadn't been issued yet -- or until the
  2998. customers discover that their numbers have been accessed by someone who isn't
  2999. "authorized."
  3000.  
  3001. Bulletin boards can be especially easy prey.  "If a hacker knew your BBS
  3002. program intimately, he could probably figure it out, but that's messy," said
  3003. Suthers.  "If he can find a back door, it's easier.  Sysops are notorious for
  3004. putting in their own back doors because, though they have all the security
  3005. under the sun on the FRONT doors, they still want to get in without problems.
  3006. It's just like what happened in the films Tron and Wargames -- which probably
  3007. taught a whole generation a lot of things."
  3008.  
  3009. Meier had said in the August, 1987 issue of Antic that someone once called his
  3010. board COLLECT.  Simply put, the caller fooled the operator.  McMullen says
  3011. that's been around for a long time.  "It's common in prisons and situations
  3012. where the phones are restricted." McMullen also said that if the timing is just
  3013. right, as soon as the modem answers, the phreaker can wait for an operator to
  3014. say "Will you accept the charges," then say "Yes."  The operator can't tell
  3015. which end said yes, and if the modem has a long delay before the connect tone,
  3016. the phreaker can get away with it.  It couldn't be done entirely electronically
  3017. -- the voice contact is needed.
  3018.  
  3019. "I've never run across people accessing online services such as CompuServe in
  3020. this way, but I'm sure it happens," said McMullen.  "People suddenly get
  3021. strange charges on their phone bills. "The hackers I've dealt with are very
  3022. brilliant and good at what they do. Of course, when you do something all day
  3023. that you're really interested in, you're
  3024. GOING to be good at it."
  3025.  
  3026.  
  3027. DOOM
  3028.  
  3029. McMullen's most recent hacker case at Stanford University dealt with the Legion
  3030. of Doom, an elite group of hackers who broke into computers -- some containing
  3031. national defense-related items. "As I understand it, they're supposed to be the
  3032. top hackers in the nation," McMullen said.  "I started investigating the case
  3033. when it began crossing state lines, getting a bit too big.  I contacted the
  3034. FBI, who said that because of the Secret Service's jurisdiction over credit
  3035. card and telephone access fraud, they'd taken over computer crime
  3036. investigations that go across state lines -- actually, anything involving a
  3037. telephone access code.  This case, of course, involved access codes, because
  3038. the Sprint and AT&T systems were used, and it was the Secret Service, not the
  3039. FBI, that made the arrests. "I think that the publicity from this case will
  3040. scare people, and there'll be a lot less hacking for a while.  Some hackers are
  3041. afraid to do anything: they're afraid that the Secret Service is watching them,
  3042. too."
  3043.  
  3044.  
  3045. TRACING
  3046.  
  3047. AT&T, Sprint and MCI now have ANI -- Automatic Number Identification -- as does
  3048. Pacific Bell.  It aids a great deal in detecting hackers.  Pacific Bell usually
  3049. just assists in this type of investigation and identifies the hackers. "It's
  3050. easy to trace a call if the caller logs in more than once," said Suthers. "The
  3051. moment they dial in, a message is printed out -- before the phone even answers
  3052. -- pinpointing where it came from, where it went to, the whole shmeer.
  3053.  
  3054. "A blue box made it much harder to detect, but if a hacker used it
  3055. consistently, we could eventually trace it back.  So if someone is in
  3056. California and makes it look as if he'd called from New York, we can trace it
  3057. across the country one way, and then back across.  Generally, though if the
  3058. call IS billed to a New York number, the caller is actually somewhere like
  3059. Florida.  But we can back-trace the call itself, especially if it's extremely
  3060. long."
  3061.  
  3062. But recently someone broke into Pacific Bell "through a fluke of
  3063. circumstances."  Suthers said, "We closed down that whole area, so they can't
  3064. get back in that way, but if they dial the number again, they're in trouble."
  3065. If Pacific Bell Security detects a break-in, the area is secured immediately.
  3066. Sometimes hackers are steered toward a kind of "pseudo-system" that makes them
  3067. THINK they've broken in -- but in fact they're being monitored and traced.
  3068. As to how many hackers there are, who knows?  There's a lot of misuse and
  3069. inside work that's never detected or reported.
  3070.  
  3071.  
  3072. SECURITY
  3073.  
  3074. Security systems are expensive, but someone with a lot of data and an important
  3075. system should seriously look into one.  Very few hackers are caught, simply
  3076. because few corporations have good security systems. "Passwords should never be
  3077. names, places or anything that can be found in a dictionary," said Suthers.
  3078. "People shouldn't be able to just write a program to send words from their
  3079. AtariWriter Plus dictionary disk.  Normally there should be a letter here, a
  3080. few numbers there -- garbage. Thus, if someone writes a program to generate
  3081. random symbols and keeps calling back until he breaks in, he'll probably be
  3082. traced. "Some corporations aren't very computer literate and don't worry about
  3083. things like passwords until they've been hit, which is a shame.  But it's all
  3084. out there in the books. TRICKS OF THE UNIX MASTER (by Russell Sage, published
  3085. by SAMS Publications, $22.95) is a beautiful book that tells you exactly what
  3086. to do to avoid break-ins."
  3087.  
  3088. McMullen said that Stanford is trying to tighten up security by emphasizing the
  3089. importance of better passwords. "When researchers want to do their work,
  3090. however, they don't want to mess with passwords and codes," he said.
  3091. "Universities seem to want to make their systems easier for researchers to use.
  3092. The more accessible it is, obviously, the less security there is in terms of
  3093. passwords.  It's easier to use your name as a password than some complicated
  3094. character string. "So any hacker worth his salt can go onto any computer system
  3095. and pull out an account.  Especially with UNIX, it's very easy to access it,
  3096. entering as the password the first name of the person who has the account.
  3097. These Legion of Doom hackers used a program that actually found out what the
  3098. passwords were: it began by just checking the names.  They were very successful
  3099. -- it was just unbelievable."
  3100.  
  3101. But McMullen feels that security fell way behind the advances made in
  3102. computers, and several avenues were left open for people to explore.  "Often
  3103. these hackers don't mean to be malicious or destructive," he said, "but I think
  3104. they really feel triumphant at getting on.  Sometimes they do damage without
  3105. realizing it, just by tramping through the system:  shutting down phone lines,
  3106. programs and accounting systems." However, the strides made in security since
  3107. then have accounted for arrests, confiscations and convictions all over the
  3108. country -- but there are still many more to come.
  3109.  
  3110.  
  3111.  
  3112.  
  3113.  
  3114.  
  3115. The LOD/H Technical Journal, Issue #3: File 11 of 11
  3116.  
  3117. $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
  3118. $                                                                            $
  3119. $                            Network News & Notes                            $
  3120. $                                                                            $
  3121. $                       Compiled from Comp.Risks Digest                      $
  3122. $                                      by                                    $
  3123. $                                  The Mentor                                $
  3124. $                                                                            $
  3125. $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
  3126.  
  3127.     Comp.Risks Digest is a USENET distributed newsletter on risks to the
  3128. public from computer-related systems.  It is frequently one of the first
  3129. places that bugs in operating systems show up.  These are some of the more
  3130. interesting posts that have appeared in the past month.
  3131.  
  3132.  ----------------------------------------------------------------------------
  3133.  
  3134. Date:   Wed, 5 Oct 88 12:35:37 EDT
  3135. From: Dave Wortman <dw@csri.toronto.edu>
  3136. Subject: Emergency Access to Unlisted Telephone Numbers
  3137.  
  3138. The article below was originally posted to misc.consumers.  I thought it might
  3139. be of interest to RISKS readers as an example of a well-thought-out set of
  3140. administrative procedures designed to balance the needs of protection of
  3141. privacy and response to emergency situations.
  3142.  
  3143.    =======================================================================
  3144.  
  3145. All examples in this message pertain to Illinois Bell Telephone Company, which
  3146. covers the Chicago metropolitan area, and quite a bit of the rest of Illinois.
  3147.  
  3148. There are three types of phone numbers which do not appear in the printed and
  3149. publicly available directory: (1) Too new to list (2) Non-listed (3) Non-pub.
  3150. [discussion of types (1) and (2) deleted.]
  3151.  
  3152. The third category of numbers not in the phone book or available from the
  3153. Directory Assistance Bureau are non-published numbers. Non-pub numbers are NOT
  3154. available at the Directory Assistance level. Inquiries about same which are
  3155. input into a DA terminal simply come up with a message that 'at the customer's
  3156. request, the number is not listed in our records; the number is non-published.'
  3157.  
  3158. Well, who does keep non-pub records then? The Business Office has no handy way
  3159. to retrieve them, since they depend on an actual phone number when they pull up
  3160. a record to discuss an account. Once a service order is processed, the number
  3161. and associated name are no longer available to the average worker in the
  3162. central office.
  3163.  
  3164. There was for several years a small group known as the 'NonPub Number Bureau'
  3165. which at the time was located in Hinsdale, IL. Needless to say, the phone
  3166. number to the NonPub Number Bureau was itself non-published, and was only
  3167. available to specified employees at Bell who were deemed to have a 'need to
  3168. know'. Now I think with all the records being highly computerized, the keepers
  3169. of the non-pub phone numbers are themselves scattered around from one phone
  3170. office to another.
  3171.  
  3172. When there is some specific need for an employee at the phone company to
  3173. acquire the non-published number of a subscriber, then certain security
  3174. precautions kick into place. Only a tiny percentage of telephone company
  3175. employees are deemed to have a 'need to know' in the first place; among
  3176. these would be the GCO's (Grup Chef Operators), certain management people
  3177. in the central offices, certain people in the Treasury/Accounting office,
  3178. andof course, security representatives both from Illinois Bell and the
  3179. various long distance carriers, such as AT&T/Sprint/MCI.
  3180.  
  3181. Let us have a hypothetical example for our Correspondent: Your mother has taken
  3182. seriously ill, and is on her deathbed. Your brother is unable to reach you to
  3183. notify you of this because you have a non-pub number. When his request for the
  3184. number has been turned down by Directory Assistance, simply because they do not
  3185. have it, he asks to speak with a supervisor, and he explains the problem. He
  3186. provides his own name and telephone number, and the supervisor states he will
  3187. be called back at a later time. The supervisor does not question if in fact an
  3188. emergency exists, which is the only valid reason for breaking security. The
  3189. supervisor may, if they are doing their job correctly, ask the inquirer point
  3190. blank, "Are you stating there is an emergency situation?".
  3191.  
  3192. Please bear inmind tat the law in Illinois and in many other states says that
  3193. if a person claims that an emergency exists in order to influence the use (or
  3194. discontinuance of use) of the telephone when in fact there is no emergency is
  3195. guilty of a misdemeanor crime. You say yes this is an emergency and I need to
  3196. contact my brother/sister/etc right away. The supervisor will then talk to
  3197. his/her supervisor, who is generally of the rank of Chief Operator for that
  3198. particular facility.
  3199.  
  3200. The Chief Operator will call the NonPub people, will identify herself, and
  3201. *leave her own call back number*. The NonPub people will call back to verify
  3202. the origin of the call, and only then will there be information given out
  3203. regards your brother's telephone number. It helps if you know the *exact* way
  3204. the name appears in the records, and the *exact* address; if there is more than
  3205. one of that name with non-pub service, they may tell you they are unable to
  3206. figure out who it is you want.
  3207.  
  3208. The NonPub person will then call the subscriber with the nn-published number
  3209. and explain to tem what has occurred: So and so has contacted one of our
  3210. operators and asked for assistance in reaching you. The party states that it
  3211. is a family emergency which requires your immediate attention. Would it be
  3212. alright if we give him/her your number, *or would you prefer to call them back
  3213. yourself?
  3214.  
  3215. Based on the answer given, the number is either relayed back to the Chief
  3216. Operator, or a message is rlaedback saying the non-pub customer has been
  3217. notified. If the customer says it is okay to pass his number, then the Chief
  3218. Operator will call you back, ask who YOU are, rather than saying WHO she wants,
  3219. and satisfied with your identification will give you the number you are seeking
  3220. or will advise you that your brother has been given the message by someone from
  3221. our office, and has said he will contact you.
  3222.  
  3223. Before the NonPub people will even talk to you, your 'call back number' has to
  3224. be on their list of approved numbers for that purpose. A clerk n the Business
  3225. Office cannot imitate a Chief Operator for example, simply because NonPub would
  3226. say that the number you are asking us to call back to is not on our list. "Tell
  3227. your supervisor what it is you are seeking and have them call us..."
  3228.  
  3229. Other emergency type requests for non-pub numbers would be a big fire at some
  3230. business place in the middle of the night, and the owners of the company must
  3231. be notified at their home; or a child is found wandering by the police and
  3232. the child is too young to know his parent's (non-pub) number.
  3233.  
  3234. They will also handle non-emergency requests, but only if they are of some
  3235. importance and not frivolous in nature. You have just come to our city to visit
  3236. and are seeking a long lost friend who has a non-pub number; you are compiling
  3237. the invitations to your high school class fiftieth re-union and find a class
  3238. member is non-pub. Within certain reasonable limits, they will pass along your
  3239. request to the desired party and let them make the choice of whether to return
  3240. the call or not. But always, you leave your phone number with them, and in due
  3241. time someone will call yo back to report what has been said or done.
  3242.  
  3243. You would be surprised -- or maybe you wouldn't -- at the numerous scams and
  3244. [........] stories people tell the phone company to get the non-pub number of
  3245. someone else. Fortunately, Bell takes a great deal of pride in their efforts to
  3246. protect the privacy of their subscribers.
  3247.  
  3248. Patrick Townson, The Portal Syse(TM)
  3249. uunet!portal!cup.portal.com!Patrick_A_Townson
  3250.  
  3251. -----------------------
  3252.  
  3253. Date: Tue, 4 Oct 88 18:01:58 CDT
  3254. From: linnig@skvax1.csc.ti.com
  3255. Subject: More on monitoring Cellular Phones
  3256.  
  3257. Alan Kaminsky (ark%hoder@CS.RIT.EDU) writes:
  3258.  
  3259. > When a phone detects a paging message with
  3260. > its own address, it broadcasts a page response message.  This response is
  3261. > received by all the cells in the system, and the signal strength is measured.
  3262. > The cell receiving the strongest response is assumed to be the cell in which
  3263. > the phone is located, an unused frequency in that cell is assigned, and the
  3264. > phone call is switched to a transceiver in that cell.
  3265.  
  3266. Ah, but could the phone company send out a page without a following
  3267. "ring them" message?  If they could, then they could periodically
  3268. poll your position, and your faithful cellular phone would report
  3269. it without your knowledge.
  3270.  
  3271. > As for business competitors monitoring calls you place on your cellular
  3272. > telephone, to find out your clients' phone numbers:  This is perfectly
  3273. > possible.... One hopes the FCC, police, etc.
  3274. > would prevent anyone from offering such a product commercially.
  3275.  
  3276. Well, the communication privacy act recently passed prevents you from
  3277. intercepting the audio side of the cellular phone conversation, but I doubt
  3278. if it prevents you from picking up the dialing info. I think such a device
  3279. might be considered in the same class as a "pen register." Pen registers
  3280. record the numbers called on a telephone circuit. I believe the Supreme
  3281. Court doesn't even require a search warrant to place a pen register on a
  3282. phone. It may be quite legal to record the phone numbers dialed by a
  3283. cellular phone. Someone with a law background want to comment?
  3284.  
  3285.         Mike Linnig,
  3286.         Texas Instruments
  3287.  
  3288. ------------------------------
  3289.  
  3290. Date: Fri, 7 Oct 88 09:00:08 edt
  3291. From: Henry Cox  <cox@spock.ee.mcgill.ca>
  3292. Subject: Reach Out and Touch Someone...
  3293.  
  3294. TEENS RUN UP TELEPHONE BILL OF $650,000
  3295.  
  3296. [From the Montreal Gazette, 7 October 1988]
  3297.  
  3298. LAS VEGAS (AP) - Ten teenage hackers may have run up $650 000 in
  3299. telephone calls by tricking phone company computers, and their parents
  3300. could be liable for the tab, authorities said.
  3301.  
  3302. "They reached out, all right," assistant U.S. Attorney Russel Mayer said
  3303. of the hackers, nine 14-year-olds and one 17-year-old.  "They reached
  3304. out and touched the world."
  3305.  
  3306. Tom Spurlock, resident agent in charge of the Las Vegas Secret Service
  3307. office, said the teen agers engaged in "blue boxing," a technique that
  3308. enabled them to talk to fellow hackers throughout Europe.
  3309.  
  3310. "They were calling numbers that were in the ATT system, and their
  3311. (computer) programs would allow them to jump' ATT's circuits, allowing
  3312. them to call anywhere in the world."
  3313.  
  3314. The expensive shenanigans came to light when local phone company
  3315. officials discovered unusual activity on nine Las Vegas phone lines,
  3316. Spurlock said.  He said federal agents obtained warrants and searched
  3317. the nine homes.
  3318.  
  3319. The teenagers weren't taken into custody or charged, but their computers
  3320. were seized.
  3321.  
  3322.                                         Henry Cox
  3323.  
  3324. ------------------------------
  3325.  
  3326. Date: Fri, 07 Oct 88 13:35:03 -0400
  3327. From: davis@community-chest.mitre.org
  3328. Subject: Computer Security and Voice Mail
  3329.  
  3330. >From the Oct 6 Washington Post.
  3331. >From a news item "Hackers Find New Way to Tap Long-Distance Phone Lines".
  3332.  
  3333. Zotos International Co. received two consecutive $75,000 phone bills,
  3334. due to use of their automated answering system by hackers.
  3335.  
  3336. Zotos' switchboard automatically routes incoming calls to the proper
  3337. department.  Hackers found a way to circumvent the system to place outgoing
  3338. long-distance calls, in some cases to Pakistan and Senegal.  In this case the
  3339. calls were traced to Pakistani businesses in New York.  However, police
  3340. officials told Zotos that they must catch the hackers in the act in order to
  3341. prosecute.  The telephone company informed Zotos' mangement to pay the bills,
  3342. and collect from the susspected hackers via the civil courts.
  3343.  
  3344. In the same article, a related Los Angeles case of misuse of an electronic
  3345. switchboard system by outsiders described 'capture' of 200 of a company's
  3346. password-secured voice mail accounts.  Outsiders, in this cases a dope ring and
  3347. a prostitution ring, gained access by guessing the 4-digit passwords and
  3348. changing them.  The hackers backed off only when 'Federal authorities' began
  3349. tracing calls.
  3350.  
  3351. The article quotes security experts as recommending systems including several
  3352. access codes.  Also, major companies are adding software to detect changes in
  3353. calling patterns.
  3354.  
  3355. ------------------------------
  3356.  
  3357. Date: 6 Oct 88 09:45
  3358. From: plouff%nac.DEC@decwrl.dec.com (Wes Plouff)
  3359. Subject: Re: Risks of Cellular Phones
  3360.  
  3361. Recent writers to RISKS, starting with Chuck Weinstock in issue 7.57, have
  3362. focused on the risk of vehicle location by cellular telephone systems.  In my
  3363. opinion, they exaggerate this risk and underestimate another risk of mobile
  3364. phones, the complete lack of privacy in radio transmissions.
  3365.  
  3366. Roughly 10 years ago I designed vehicle location controller hardware and
  3367. firmware used in the Washington-Baltimore cellular demonstration system.
  3368. That system led directly to products sold at least through the first
  3369. waves of cellular system construction a few years ago.
  3370.  
  3371. Since cellular base stations have intentionally limited geographic
  3372. coverage, vehicle location is a requirement. This limitation is used to
  3373. conserve radio channels; one cell's frequencies can be re-used by others
  3374. far enough away in the same metropolitan area.  The cell system must
  3375. determine which cell a mobile user is located in when he begins a call,
  3376. and when during a conversation a vehicle crosses from one cell into
  3377. another.  Cells are set up perhaps 3 to 20 miles in diameter and range
  3378. from circular to very irregular shapes.  Cellular phone systems are
  3379. designed with ample margins so that statistically very few calls will be
  3380. lost or have degraded voice quality.
  3381.  
  3382. Making this system work does not require anything so fancy as
  3383. triangulation.  Vehicle location needs to be only good enough to keep
  3384. signal quality acceptably high.  John Gilmore explained in RISKS 7.58
  3385. how this works while the mobile phone is on-hook.  During a
  3386. conversation, the base station periodically measures the signal strength
  3387. of an active mobile in its cell.  When the signal strength goes below a
  3388. threshold, adjacent cells measure the mobile's signal strength.  This
  3389. 'handoff trial' procedure requires no interaction with the mobile.  If
  3390. the mobile was stronger by some margin in an adjacent cell, both the mobile
  3391. phone and the cellular exchange switch are ordered to switch to a channel and
  3392. corresponding phone line in the new cell.  Since base stations commonly use
  3393. directional antennas to cover a full circle, mobiles could be reliably located
  3394. in one third of the cell area at best.  Distance-measuring techniques advocated
  3395. by AT&T were not adopted because the added cost was too high for the modest
  3396. performance gain.
  3397.  
  3398. Certainly a cellular phone system can locate a mobile at any time, and always
  3399. locates a mobile during a conversation.  But the information is not
  3400. fine-grained enough to implement some of the schemes imagined by previous
  3401. writers.
  3402.  
  3403. A more important risk is the risk of conversations being intercepted.  The
  3404. public airwaves are simply that: public.  Scanner radios can easily be found or
  3405. modified to cover the cellular band, and listeners will tolerate lower signal
  3406. quality than cellular providers, hence one scanner can listen to cell base
  3407. stations over a wide area.  The communications privacy law is no shield because
  3408. listeners are undetectable.  To bring this back to risks of computers,
  3409. automated monitoring and recording of selected mobile phones is probably beyond
  3410. the reach of the average computer hobbyist, but easily feasible for a
  3411. commercial or government organization using no part of the infrastructure
  3412. whatever, just the control messages available on the air.
  3413.  
  3414. Wes Plouff, Digital Equipment Corp, Littleton, Mass.
  3415. plouff%nac.dec@decwrl.dec.com
  3416.  
  3417. ------------------------------
  3418.  
  3419. Date: Wed, 12 Oct 88 20:34:01 -0700
  3420. From: davy@riacs.edu  <David A. Curry>
  3421. Subject: 100 digit primes no longer safe in crypto
  3422.  
  3423. Taken from the San Jose Mercury News, Oct. 12, 1988, Page 8A:
  3424.  
  3425. Computers able to make light work of cracking code (Los Angeles Times)
  3426.  
  3427.   Some secret codes intended to restrict access to military secrets and Swiss
  3428. bank accounts may not be as safe as had been presumed, a team of computer
  3429. experts demonstrated Tuesday.
  3430.   The team succeeded in doing what security experts thought could not be done:
  3431. using ordinary computers to break down a 100-digit number into the components
  3432. that produce it when multiplied together.
  3433.   That process, called factoring, holds the key to many security codes.
  3434.   Before Tuesday, experts had believed that if the number was large enough -
  3435. up to 100 digits - its factoring would take about 10 months with a Cray super-
  3436. computer, one of the most powerful computers in the world.
  3437.   But computer experts across the United States, Europe and Australia solved
  3438. the problem more quickly by using 400 processors simultaneously.  They linked
  3439. their computers electronically and factored a 100-digit number in just 26 days.
  3440.   The number has two factors, one 41 digits long and the other 60 digits long.
  3441.   And that, according to Arjen Lenstra, professor of computer science at the
  3442. University of Chicago, should be quite sobering to experts who believe they
  3443. are secure with codes based on numbers that large.  Lenstra headed the project,
  3444. along with Mark S. Manasse of the Digital Equipment Corp.'s Systems Research
  3445. Center in Palo Alto.
  3446.  
  3447.         [ quotes from experts ]
  3448.  
  3449.   Rodney M. Goodman, associate professor of electrical engineering and an
  3450. expert on cryptography at the California Institute of Technology in Pasadena,
  3451. described the achievement as "significant," because it means that some systems
  3452. may not be as secure as had been thought.  But he said it did not mean that
  3453. security experts around the world would have to rebuild their systems.
  3454.   "All the cryptographers will do is increase the length of the number by a
  3455. few more digits," he said, "because the problem gets exponentially worse as
  3456. you increase the size of the number."  A larger number is more cumbersome, and
  3457. cryptographers had tried to kep the number as small as possible.
  3458.  
  3459.         [ explanation of the idea behind using large numbers with
  3460.           prime factors in cryptography ]
  3461.  
  3462.   Last year, Lenstra decided to tackle the problem on "a small scale, just to
  3463. see if he could do it," according to Larry Arbeiter, spokesman for the Univ-
  3464. ersity of Chicago.  "It was a pure science type of effort."
  3465.   Several months ago, Lenstra presented his idea to Manasse, a computer re-
  3466. search scientist with Digital.  Manasse became so intrigued with the problem
  3467. that his company agreed to fund much of the cost, including the use of more
  3468. than 300 computer processors at the Palo Alto company during off-duty hours.
  3469. The company manufactures DEC computers.
  3470.   "I was interested in the general problem of taking a program and breaking it
  3471. up into small pieces" so that many could work simultaneously toward the sol-
  3472. ution, Manasse said.
  3473.   Other computer enthusiasts from the "factoring community" clamored aboard
  3474. and this fall more than 400 computers around the globe were ready to give it a
  3475. try.
  3476.   The computers ranged in size from microcomputers to a Cray supercomputer,
  3477. but even personal computers with large memories could have been used, Lenstra
  3478. said.  Each of the participating computers was given a different part of the
  3479. problem to solve, and success came early Tuesday morning.
  3480.  
  3481. ------------------------------
  3482.  
  3483. Date: 12 Oct 88 19:14:22 GMT
  3484. From: spaf@purdue.edu (Gene Spafford)
  3485. Subject: NSFnet Backbone Shot
  3486.  
  3487. The following mail was forwarded to me a few minutes ago.  This refers to
  3488. the MCI fiber used to carry the NSFnet backbone.  No wonder some of my mail
  3489. has disappeared recently!                  [From: field inadvertently deleted?]
  3490.  
  3491. => Date: Wed, 12 Oct 88 12:47:00 EDT
  3492. => To: watchdogs@um.cc.umich.edu, ie@merit.edu
  3493. => Subject: A bit of trivia
  3494. =>
  3495. => The fiber that goes from Houston to Pittsburgh was broken due
  3496. => to a gun blast....that is right, a gun blast.
  3497. => Somewhere in the swamps of the Bayou (between Alabama and New Orleans)
  3498. => the fiber cables are suspended above the swamps and a good ol'
  3499. => boy was apparently target practicing on the cable.
  3500. =>
  3501. => Traffic has been rerouted and when the investigation has taken place
  3502. => and the cable fixed we will be put back on the original circuit.
  3503.  
  3504. Gene Spafford
  3505. NSF/Purdue/U of Florida  Software Engineering Research Center,
  3506. Dept. of Computer Sciences, Purdue University, W. Lafayette IN 47907-2004
  3507. Internet:  spaf@cs.purdue.edu   uucp:   ...!$decwrl,gatech,ucbvax!purdue!spaf
  3508.  
  3509. ------------------------------
  3510.  
  3511. Date: Tue, 11 Oct 88 00:14 MDT
  3512. From: MCCLELLAND_G%CUBLDR@VAXF.COLORADO.EDU
  3513. Subject: Intersection of ANI and Voice Mail Risks
  3514.  
  3515.    Recent reports in RISKS of nefarious deeds committed by hackers who
  3516. entered a system via voice mail prompted me to inquire about the voice mail
  3517. security of my university's system.  A year ago the U bought its own fancy
  3518. switch for on-campus communications.  Some of the goodies include voice
  3519. mail and ANI.  I tried the voice mail once but since I much prefer e-mail
  3520. I long ago forgot my voice mail password (yep, only 4 digits if the
  3521. hackers want to start guessing).  I called the telecommunications office
  3522. to determine where I needed to go in person and with how many photo ID's
  3523. to get my voice mail password.  Even though I hadn't identified myself,
  3524. the clerk said, "Oh that won't be necessary, Mr. McClelland, I'll just
  3525. change your password back to the default password and you can then change
  3526. it to whatever you want."  I said, "But how do you know that I'm
  3527. McClelland?"  He replies, "Because it shows on the digital display on my
  3528. phone both the phone number and name of the caller."  [Most phones are in
  3529. private offices so a unique name can be attached to each number.]  I tried
  3530. to explain that all he really knew was that I was someone calling from the
  3531. phone in McClelland's office and that I could be the janitor, a grad
  3532. student, or almost anyone.  But security wasn't his problem so he wasn't
  3533. very concerned.  I was afraid to ask how many folks never bother to change
  3534. their default password.  As I was about to hang up, he said, "By the way, if
  3535. you check your voice mail from your own extension you don't even need to enter
  3536. your password."  I said , "Thanks, that's reassuring" but I don't think he
  3537. caught the sarcasm.
  3538.   Gary McClelland
  3539.  
  3540. ------------------------------
  3541.  
  3542. Date: 6 Oct 88 09:45
  3543. From: plouff%nac.DEC@decwrl.dec.com (Wes Plouff)
  3544. Subject: Re: Risks of Cellular Phones
  3545.  
  3546. Recent writers to RISKS, starting with Chuck Weinstock in issue 7.57, have
  3547. focused onthe risk of vehicle location by cellular telephone systems.  In my
  3548. opinion, they exaggerate this risk and underestimate another risk of mobile
  3549. phones, the complete lack of privacy in radio transmissions.
  3550.  
  3551. Roughly 10 years ago I designed vehicle location controller hardware and
  3552. firmware used in the Washington-Baltimore cellular demonstration system.
  3553. That system led directly to products sold at least through the first
  3554. waves of cellular system construction a few years ago.
  3555.  
  3556. Since cellular base stations have intentionally limited geographic coverage,
  3557. vehicle location is a requirement. This limitation is used to conserve radio
  3558. channels; one cell's frequencies can be re-used by others far enough away in
  3559. the same metropolitan area.  The cell system must determine which cell a mobile
  3560. user is located in when he begins a call, and when during a conversation a
  3561. vehicle crosses from one cell into another.  Cells are set up perhaps 3 to 20
  3562. miles in diameter and range from circular to very irregular shapes.  Cellular
  3563. phone systems are designed with ample margins so that statistically very few
  3564. calls will be lost or have degraded voice quality.
  3565.  
  3566. Making this system work does not require anything so fancy as
  3567. triangulation.  Vehicle location needs to be only good enough to keep
  3568. signal quality acceptably high.  John Gilmore explained in RISKS 7.58
  3569. how this works while the mobile phone is on-hook.  During a
  3570. conversation, the base station periodically measures the signal strength
  3571. of an active mobile in its cell.  When the signal strength goes below a
  3572. threshold, adjacent cells measure the mobile's signal strength.  This
  3573. 'handoff trial' procedure requires no interaction with the mobile.  If
  3574. the mobile was stronger by some margin in an adjacent cell, both the mobile
  3575. phone and the cellular exchange switch are ordered to switch to a channel and
  3576. corresponding phone line in e new cell.  Since base stations commonly use
  3577. directional antennas to cover a full circle, mobiles could be reliably located
  3578. in one third of the cell area at best.  Distance-measuring techniques advocated
  3579. by AT&T were not adopted because the added cost was too high for the modest
  3580. performance gain.
  3581.  
  3582. Certainly a cellular phone system can locate a mobile at any time, and always
  3583. locates a mobile during a conversation.  But the information is not
  3584. fine-grained enough to implement some of the schemes imagined by previous
  3585. writers.
  3586.  
  3587. A more important risk is the risk of conversations being intercepted.  The
  3588. public airwaves are simply that: public.  Scanner radios can easily be found or
  3589. modified to cover the cellular band, and listeners will tolerate lower signal
  3590. quality than cellular providers, hence one scanner can listen to cell base
  3591. stations over a wide area.  The communications privacy law is no shield because
  3592. listeners are undetectable.  To bring this back to risks of computers,
  3593. automated monitoring and recording of selected bile phones is probably beyond
  3594. the reach of the average computer hobbyist, but easily feasible for a
  3595. commercial or government organization using no part of the infrastructure
  3596. whatever, just the control messages available on the air.
  3597.  
  3598. Wes Plouff, Digital Equipment Corp, Littleton, Mass.
  3599. plouff%nac.dec@decwrl.dec.com
  3600.  
  3601. ------------------------------
  3602.  
  3603. Date:    28 Sep 88 10:10:47 +0100 (Wednesday)
  3604. From: Peter Robinson <pr@computer-lab.cambridge.ac.uk@NSS.Cs.Ucl.AC.UK>
  3605. Subject: Re: Risks of cellular telephones
  3606.  
  3607. As a radio amateur, I have always been taught that using mobile transmitters
  3608. near petrol stations is bad form - the radiation from the transmitter can
  3609. induce currents in nearby metalwork and perhaps cause a spark.  The thought of
  3610. a cellular telephone being able to transmit without the operator's consent (in
  3611. response to a paging call) is, therefore, slightly RISKy.
  3612.  
  3613. Tis cold even get worse as technology progesses.  As the sunspot cycle
  3614. advances, it sees plausible that transmissions will carry further and
  3615. interfere with those in nearby cells (not the adjacent ones, they usually have
  3616. distinct frequencies).  Before long the manufacturers will introduce adaptive
  3617. control where the transmitter power is adjusted dynamically to compensate for
  3618. variations in the signal path between the mobile and base stations.  So then
  3619. when you pull into a petrol station and receive a call, the system will notice
  3620. that all the surrounding metal is impairing your signal and will increase the
  3621. transmitter power accordingly...
  3622.  
  3623. Incidentally, I am not sure what power these radios use, but I would be
  3624. slightly nervous about using a hand-held telephone with the antenna anywhere
  3625. near my eyes if it is more than a few Watts.
  3626.  
  3627. ------------------------------
  3628.  
  3629. Date: Sat, 8 Oct 88 15:59:56 MET
  3630. From: "Walter Doerr" <wd@dg2kk.UUCP>
  3631. Subject: Risks of cellulr phnes
  3632.  
  3633. Chuck Weistock <weinstoc@SEI.CMU.EDU> writes in RISKS 7.57:
  3634.  
  3635. > Subjec: Rsks of Cellular Phones?
  3636. >
  3637. > While discussing radio triangulation last nigh, the question came up:
  3638. > If I dial a phone number attached to a cellular phone, how does the
  3639. > cellular system know which cell should send the ring signal to the
  3640. > phone?  Is it a system wide broadcast, or does the cellular phone
  3641. > periodically broadcast a "here I am" signal?
  3642.  
  3643. In the 'C-Net' here in Germany, all mobile phones send a "here I am" signal
  3644. whenever they move to a new cell. This information (the cell where the phone
  3645. can be reached) is stored in the database of the phone's "home" base.  Calls to
  3646. mobile phones are routed to a computer in Frankfurt which contacts the home
  3647. base computer (based on the first few digits of the mobile phonenumber), which,
  3648. in turn, knows the cell the phone is currently in.
  3649.  
  3650. > If the latter, a less than benevolent government (or phone company for
  3651. > that matter) could use that information to track its citizens' cars'
  3652. > whereabouts.
  3653.  
  3654. According to an article in an electronics magazine, the German PTT was
  3655. approached by a police agency, who expressed interest in the data stored in the
  3656. networks computers.  The article quotes a Siemens mobile telephone specialist
  3657. as saying that it isn't possible topipoint the current location of a mobile
  3658. phone because:
  3659.  
  3660.         - the phone must be switched on for the network to recognize it
  3661.         - the cells use omnidirectional antennas, so it isn't possible
  3662.           to determine the direction from where the mobile phone's signal came.
  3663.  
  3664. While this is true, it is certainly possible to determine the location of a
  3665. phone with an accuracy of a few miles (the size of the cell the phone is in)
  3666. without using any additional direction finding methods (radio triangulation).
  3667.  
  3668. Walter Doerr
  3669.  
  3670. -------------------------------------------------------------------------------
  3671.                     End of the LOD/H Technical Journal #3
  3672. -------------------------------------------------------------------------------
  3673.  
  3674.